标签:sre something 实现 模块 mod dos name 代码 factory
关于AMD有两个非常重要的概念,那就是用于模块定义的define方法和用于处理依赖加载的require方法。
define函数定义:
define( [module-name?] /*可选*/, (模块标示)-----如果没有这个属性,则成为匿名函数 [array-of-dependencies?] /*可选*/, (所依赖的模块) [module-factory-or-object] (模块的实现) );
具体实现:
define( "myModule", ["foo", "bar"], // 模块定义函数,依赖(foo,bar)作为参数映射到函数上 function (foo, bar) { // 创建模块 var myModule = { myFun: function () { console.log("Jeri"); } } // 返回定义的模块 return myModule; } );
require用于加载JavaScript文件或模块的代码,获取依赖。示例如下:
// foo,bar为外部模块,加载以后的输出作为回调函数的参数传入,以便访问 requrie(["foo", "bar"], function (foo, bar) { // 其他代码 foo.doSomething(); });
动态加载依赖的示例:
define(
function (requrie) {
var isReady = false,
foobar;
requrie(["foo", "bar"], function (foo, bar) {
isReady = true,
foobar = foo() + bar();
});
// 返回定义的模块
return {
isReady: isReady,
foobar: foobar
};
}
);
标签:sre something 实现 模块 mod dos name 代码 factory
原文地址:http://www.cnblogs.com/w-xiaojia/p/7067477.html