requirejs的优点:

  1.防止在js的加载过程中,阻止页面的渲染;

  2.可以引入多个js文件;

  3.可以写出重复使用的js模块;

  4.有效的防止命名的冲突,通过将变量分装在模块中的方式实现;

requirejs的方法:

  1.  requirejs.config  用于指定模块的别名,方便模块的引入;

        其常用path属性来定义文件的位置;

      例如:

          require.configuration({

             paths:{

                "jquery":["文件的位置,可以使本地的,也可以使网上的。"]}

              //paths,也可以配置多个路径;并且加载模块式不用输入.js后缀;

           })

  2.  requirejs            实现模块的引入;等同于require   且require有两个参数,第一个参数是数组,表示依赖的模块,第二个参数是回调函数

        例如

          require(["定义的模块名称"],function($){//$美元符号,是依赖模块的输出变量,如果依赖多个模块,可以添加多个变量

              $(function(){

                alert("你好啊")

                })

              })

        

  3.  define                用于编写模块;就是模块的编写前缀

       例如:define(function(){

            function myFunction(){

              alert(“sss”);}

              myFunction();

4.  shim   用于引入其让他的第三方模块

            }

4...

  也可以全局配置就是模块,即在全局中都引入特定的js模块;

    运用require.config定义完模块之后,运用

  <script date-main="定义的模块所在文件的名称" src="引入的其他的js"></script>

5.  在<script>标签中加入   defer async="true"来表示异步加载,不会对网页的加载造成影响

6.在编写正式模块前,写入

  shim:{}就能支持费规范的模块了;

7. requirejs 还有一些插件

  例如

  domready  插件,可以让回调函数在dom结构加载完成之后再运行;

  text   image插件,允许加载文字,图片等

最新文章

  1. 【Win 10 应用开发】加载外部的 srt 字幕
  2. PHP_SELF、 SCRIPT_NAME、 REQUEST_URI区别
  3. paper
  4. c++继承概念
  5. 自己动手模拟百分百&lt;select&gt;下拉列表
  6. Android 动画特效
  7. C#获取ftp文件最后修改时间
  8. IOS 表视图(UITableVIew)的使用方法(2)名单的分段显示
  9. Mybatis使用过程问题总结
  10. [SDOI2013]森林 主席树+启发式合并
  11. 贝叶斯个性化排序(BPR)算法小结
  12. unable to resolve module react-native-gesture-handler from
  13. 代码中特殊的注释技术——TODO、FIXME和XXX的用处(转)
  14. llvm pass
  15. 【计算机视觉】seetaFace
  16. mysql之 重建GTID下主从关系
  17. Android Notification通知栏的使用,通知栏在Android8.0系统不显示的问题;
  18. 第156天:canvas(三)
  19. (转)linux下压缩和归档相关命令tar,zip,gzip,bzip2
  20. vue props验证

热门文章

  1. why happen &quot;WaitHandles must be less than or equal to 64&quot;
  2. sqlserver 对字符串的SUM
  3. web页面如何播放amr的音频文件
  4. 转:面试题:“你能不能谈谈,java GC是在什么时候,对什么东西,做了什么事情?”
  5. Windows Server 2008配置服务器证书[转载]
  6. InvocationException: GraphViz&#39;s executables not found
  7. terminator 安装及使用
  8. 实体写到redis写不进去--误把类当成实体类
  9. Sorry, but the Android VPN API doesn’t currently allow TAP-based tunnels.
  10. 【解决】org.apache.hadoop.util.Shell$ExitCodeException: /bin/bash: line 0: fg: no job control