require()函数接受两个参数。第一个参数是一个数组,表示所依赖的模块,上例就是[‘moduleA’, ‘moduleB’, ‘moduleC’],即主模块依赖这三个模块;第二个参数是一个回调函数,当前面指定的模块都加载成功后,它将被调用。加载的模块会以参数形式传入该函数,从而在回调函数内部就可以使用这些模块。 require()异步...
这边涉及了require.config,require.config是用来配置模块加载位置,简单点说就是给模块起一个更短更好记的名字,比如将百度的jquery库地址标记为jquery,这样在require时只需要写["jquery"]就可以加载该js,本地的js我们也可以这样配置: require.config({paths:{"jquery":["http://libs.baidu.com/jquery/2.0.3/jquer...
data-main属性的作用是,指定网页程序的主模块。在上例中,就是js目录下面的main.js,这个文件会第一个被require.js加载。由于require.js默认的文件后缀名是js,所以可以把main.js简写成main。 require.config()的配置 使用require.config()方法,我们可以对模块的加载行为进行自定义。require.config()就写在主模块(m...
模块化requireJS (1)首先想到的是函数封装。 但是函数封装有问题,污染了全局变量,无法保证不与其他模块发生冲突。而且模块之间没有什么关系。 (2)对象的形式 可以把模块成员封装在一个函数中。这样我们可以调用模块是,引入不同的文件,然后调用相应的函数即可。这样避免了变量污染,只要保证模块名称唯一就可。看似不错...
baseUrl:加载模块的根目录,因为模块大多数情况都在同一目录下,配置了此项在配置模块的时候就不用加跟目录了。 paths:这里就是配置模块了,以key:value结构的形式,可以省略文件的.js的后缀名。 require函数 此函数就是用于加载模块和依赖的,加载完成后会只想回调函数,回调函数中的参数要和前面的模板的顺序一致。我...
//require.js默认文件后缀为js,所以home.js可以写成home。 接下来我使用58HouseSearch的代码来讲解一下require的使用。 在此项目里面,重构前大概就是JS变量漫天飞,js文件里面各种函数到处乱放。一开始用起来还没什么,后来加入了更多功能的时候,JS代码维护起来就疼不欲生了。因此托了个小伙伴帮忙使用模块化思想重构了...
使用require引入模块以后,该函数会返回一个对象,该对象代表的就是引入的模块 在node中,一个js文件就是一个模块 在node中,每一个js文件中的js代码都是独立运行在一个函数中 变量也是放在函数中,一个模块的变量在其他的函数中无法访问 向外部暴露属性或者方法,有一个属性exports,向外面暴露变量和方法 ...
require([module], callback) 其中: [module]:是一个数组,里面的成员就是要加载的模块; callback:是模块加载完成之后的回调函数 1. 2. 3. 4. 所有遵循AMD规范的模块化工具,都必须按照它的要求去实现,比如RequireJS这个库,就是完全遵循AMD规范实现的,所以在利用RequireJS加载或者调用模块时,如果你事先知道AMD...
data-main属性的作用是,指定网页程序的主模块。在上例中,就是js目录下面的main.js,这个文件会第一个被require.js加载。由于require.js默认的文件后缀名是js,所以可以把main.js简写成main。 三、主模块的写法 上一节的main.js,我把它称为"主模块",意思是整个网页的入口代码。它有点像C语言的main()函数,所有...
JS模块化工具requirejs教程(一):初识requirejs 我们以非常简单的方式引入了requirejs,这一篇将讲述一下requirejs中的一些基本知识,包括API使用方式等。 基本API require会定义三个变量:define,require,requirejs,其中require === requirejs,一般使用require更简短 ...