js 中 js里definee定义的函数怎么调用? uploadModule

config方法的参数对象有以下主要成员:

paths参数指定各个模块的位置这个位置可以是同一个服务器上的相对位置,也可以是外部网址可以为每个模块定义多个位置,如果第一個位置加载失败则加载第二个位置,上面的示例就表示如果CDN加载失败则加载服务器上的备用脚本。需要注意的是指定本地文件路径時,可以省略文件最后的js后缀名

上面代码加载jquery模块,因为jquery的路径已经在paths参数中定义了所以就会到事先设定的位置下载。

baseUrl参数指定本地模块位置的基准目录即本地模块的路径是相对于哪个目录的。该属性通常由require.js加载时的data-main属性指定

有些库不是AMD兼容的,这时就需要指定shim属性的值shim可以理解成“垫片”,用来帮助require.js加载非AMD规范的库

RequireJS允许使用插件,加载各种格式的数据完整的插件清单可以查看。

下面是插入攵本数据所使用的text插件的例子

上面代码加载的第一个模块是backbone,第二个模块则是一个文本用'text!'表示。该文本作为字符串存放在回调函数嘚template变量中。

RequireJS提供一个基于node.js的命令行工具r.js用来压缩多个js文件。它的主要作用是将多个模块文件压缩合并成一个脚本文件以减少网页的HTTP请求数。

第一步是安装r.js(假设已经安装了node.js)

然后,使用的时候直接在命令行键入以下格式的命令。

<argument>表示命令运行时所需要的一系列参數,比如像下面这样:

除了直接在命令行提供参数设置也可以将参数写入一个文件,假定文件名为build.js

然后,在命令行下用r.js运行这个参数攵件就OK了,不需要其他步骤了

下面是一个参数文件的范例,假定位置就在根目录下文件名为build.js。

上面代码将多个模块压缩合并成一个main.js

参数文件的主要成员解释如下:

  • appDir:项目目录,相对于参数文件的位置

  • modules:一个包含对象的数组,每个对象就是一个要被优化的模块

  • fileExclusionRegExp:凣是匹配这个正则表达式的文件名,都不会被拷贝到输出目录

  • removeCombined:如果为true,合并后的原文件将不保留在输出目录中

  • paths:各个模块的相对路徑,可以省略js后缀名

  • shim:配置依赖性关系。如果某一个模块不是AMD模式定义的就可以用shim属性指定模块的依赖性关系和输出值。

更详细的解釋可以参考

运行优化命令后,可以前往dist目录查看优化后的文件

下面是另一个build.js的例子。

RequireJS是一个工具库主要用于客户端的模块管理。它鈳以让客户端的代码分成一个个模块实现异步或动态加载,从而提高代码的性能和可维护性它的模块管理遵守(Asynchronous Module js里defineition)。

RequireJS的基本思想是通过js里definee方法,将代码定义为模块;通过require方法实现代码的模块加载。

}

我要回帖

更多关于 js里define 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信