模块化编程--require使用

AMD--require

AMD规范:异步模块加载机制

服务器端 -- 同步加载   浏览器端 -- 异步加载       -->  因为在服务器端中,所有模块都存放在硬盘中,等待时间就是硬盘读取时间,但是浏览器端,所有模块都存放在服务器上,等待时间取决于网速快慢,可能很长时间浏览器处于假死状态

1.下载require.js,确定index.js为程序入口,则

<script src="js/require.js" data-main="js/index"></script>    -->  data-main:指定网页程序的主模块

2.index.js头部  使用require.config()对模块的加载进行自定义

require.config({

baseUrl:"js/xx",

path:{"jquery":"jquery.min","自定义模块":"自定义"}

});

然后

require(["jquery","自定义模块"],function($,xx){回调函数  -->  所有依赖这个模块的语句,都定义在回调函数中,等依赖模块加载完毕回调函数执行})

其中

1)如果依赖的是符合AMD规范的模块,如jquery,则直接require就行

2)如果依赖的是自定义的模块,则自定义模块的文件中

define(模块标识,所依赖的模块,回调函数(){return 对象})

当index中require()加载这个自定义模块时,会先加载所依赖的模块

3)如果依赖的是非规范模块,需要在require.config中定义特征

require.conifig({

shim:{"jquery.scroll":{deps:['jquery'],exports:'jquery.fn.scroll'}}  });

shim:配置不兼容的模块

exports:这个模块外部调用时的名称

deps:该模块的依赖性

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容