Require.JS中的几种define定义方式示例
本文主要给大家介绍的是关于Require.JS中define定义方式的相关内容,分享出来供大家参考学习,下面来看看详细的介绍:
定义简单的键值对
define({
color:"black",
size:"unisize"
});
定义不带依赖的函数
define(function(){
//Dosetupworkhere
return{
color:"black",
size:"unisize"
}
});
存在依赖的函数式定义
如果模块存在依赖:则第一个参数是依赖的名称数组;第二个参数是函数,在模块的所有依赖加载完毕后,该函数会被调用来定义该模块,因此该模块应该返回一个定义了本模块的object。依赖关系会以参数的形式注入到该函数上,参数列表与依赖名称列表一一对应。
define(["./cart","./inventory"],function(cart,inventory){
//returnanobjecttodefinethe"my/shirt"module.
return{
color:"blue",
size:"large",
addToCart:function(){
inventory.decrement(this);
cart.add(this);
}
}
}
);
将模块定义为一个函数
对模块的返回值类型并没有强制为一定是个object,任何函数的返回值都是允许的。此处是一个返回了函数的模块定义:
define(["my/cart","my/inventory"],
function(cart,inventory){
//returnafunctiontodefine"foo/title".
//Itgetsorsetsthewindowtitle.
returnfunction(title){
returntitle?(window.title=title):
inventory.storeName+''+cart.name;
}
}
);
定义一个命名模块
你可能会看到一些define()中包含了一个模块名称作为首个参数:
define("foo/title",
["my/cart","my/inventory"],
function(cart,inventory){
//Definefoo/titleobjectinhere.
}
);
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对毛票票的支持。