Require.JS中的几种define定义方式示例


Posted in Javascript onJune 01, 2017

本文主要给大家介绍的是关于Require.JS中define定义方式的相关内容,分享出来供大家参考学习,下面来看看详细的介绍:

定义简单的键值对

define({ 
 color: "black", 
 size: "unisize" 
});

定义不带依赖的函数

define(function () { 
 //Do setup work here 
 
 
 return { 
  color: "black", 
  size: "unisize" 
 } 
});

存在依赖的函数式定义

如果模块存在依赖:则第一个参数是依赖的名称数组;第二个参数是函数,在模块的所有依赖加载完毕后,该函数会被调用来定义该模块,因此该模块应该返回一个定义了本模块的object。依赖关系会以参数的形式注入到该函数上,参数列表与依赖名称列表一一对应。

define(["./cart", "./inventory"], function(cart, inventory) { 
  //return an object to define the "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) { 
  //return a function to define "foo/title". 
  //It gets or sets the window title. 
  return function(title) { 
   return title ? (window.title = title) : 
     inventory.storeName + ' ' + cart.name; 
  } 
 } 
);

定义一个命名模块

你可能会看到一些define()中包含了一个模块名称作为首个参数:

define("foo/title", 
 ["my/cart", "my/inventory"], 
 function(cart, inventory) { 
  //Define foo/title object in here. 
 } 
);

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

Javascript 相关文章推荐
window.parent调用父框架时 ie跟火狐不兼容问题
Jul 30 Javascript
javascript下高性能字符串连接StringBuffer类
Aug 16 Javascript
js数组操作学习总结
Nov 04 Javascript
JS实现根据当前文字选择返回被选中的文字
May 21 Javascript
angularjs 处理多个异步请求方法汇总
Jan 06 Javascript
Javascript中call和apply函数的比较和使用实例
Feb 03 Javascript
如何使用HTML5地理位置定位功能
Apr 27 Javascript
微信jssdk在iframe页面失效问题的解决措施
Mar 03 Javascript
vue.js编译时给生成的文件增加版本号
Sep 17 Javascript
vue+iview 实现可编辑表格的示例代码
Oct 31 Javascript
优雅地使用loading(推荐)
Apr 20 Javascript
详解关于webpack多入口热加载很慢的原因
Apr 24 Javascript
关于javascript获取内联样式与嵌入式样式的实例
Jun 01 #Javascript
react-router中的属性详解
Jun 01 #Javascript
javascript 数据存储的常用函数总结
Jun 01 #Javascript
Node.js+ES6+dropload.js实现移动端下拉加载实例
Jun 01 #Javascript
详解基于webpack搭建react运行环境
Jun 01 #Javascript
jQuery+Ajax实现用户名重名实时检测
Jun 01 #jQuery
Javascript实现一个简单的输入关键字添加标签效果实例
Jun 01 #Javascript
You might like
PHP中uploaded_files函数使用方法详解
2011/03/09 PHP
PHP中用hash实现的数组
2011/07/17 PHP
PHP error_log()将错误信息写入一个文件(定义和用法)
2013/10/25 PHP
php的array数组和使用实例简明教程(容易理解)
2014/03/20 PHP
详解PHP归并排序的实现
2016/10/18 PHP
PHP抽象类和接口用法实例详解
2019/07/20 PHP
javascript的对话框详解与参数
2007/03/08 Javascript
Javascript客户端将指定区域导出到Word、Excel的代码
2008/10/22 Javascript
通过身份证号得到出生日期和性别的js代码
2009/11/23 Javascript
JS对外部文件的加载及对IFRMAME的加载的实现,当加载完成后,指定指向方法(方法回调)
2011/07/04 Javascript
javascript针对DOM的应用实例(一)
2012/04/15 Javascript
javascript表单验证大全
2015/08/12 Javascript
JS模拟按钮点击功能的方法
2015/12/22 Javascript
jQuery DateTimePicker 日期和时间插件示例
2017/01/22 Javascript
Angular1.x自定义指令实例详解
2017/03/01 Javascript
bootstrap suggest搜索建议插件使用详解
2017/03/25 Javascript
js字符限制(字符截取) 一个中文汉字算两个字符
2017/09/12 Javascript
微信小程序6位或多位验证码密码输入框功能的实现代码
2018/05/29 Javascript
Promise.all中对于reject的处理方法
2018/08/01 Javascript
webpack HappyPack实战详解
2019/10/08 Javascript
[40:56]2018DOTA2亚洲邀请赛 3.31 小组赛 A组 Liquid vs TNC
2018/04/01 DOTA
python创建进程fork用法
2015/06/04 Python
Python PyQt5实现的简易计算器功能示例
2017/08/23 Python
Python3批量生成带logo的二维码方法
2019/06/24 Python
python3 webp转gif格式的实现示例
2019/12/10 Python
Python过滤掉numpy.array中非nan数据实例
2020/06/08 Python
Python爬虫防封ip的一些技巧
2020/08/06 Python
全球速卖通巴西站点:Aliexpress巴西
2016/08/24 全球购物
随机分配座位,共50个学生,使学号相邻的同学座位不能相邻
2014/01/18 面试题
TCP协议通讯的过程和步骤是什么
2015/10/18 面试题
测试时代收集的软件测试面试题
2013/09/25 面试题
烹调加工管理制度
2014/02/04 职场文书
大学生社会实践评语
2014/04/25 职场文书
校园学雷锋广播稿
2014/10/08 职场文书
政风行风评议工作总结
2014/10/21 职场文书
高中信息技术教学反思
2016/02/16 职场文书