javascript模块化简单解析


Posted in Javascript onApril 07, 2016

本文为大家解读javascript的模块化,具体内容如下

AMD是RequireJS在推广过程中对模块定义的规范化产出。

异步加载模块,依赖前置,提前执行。
Define定义模块 define([‘require','foo'],function(){return});
Require加载模块(依赖前置) require([‘foo','bar'],function(foo,bar){});

CMD是SeaJS在推广过程中对模块定义的规范化产出。

Define定义exports 导出define(function(require,exports,module){});  module上存储了当前模块上的一些对象。
require(./a)直接引入。Require.async异步引入。
同步加载,依赖就近,延迟执行。 

SeaJS 的应用

官方入门例子:http://seajs.org/docs/#quick-start

怎么写一个SeaJS模块?

// 所有模块都通过 define 来定义
define(function(require, exports, module) {
 
 // 通过 require 引入依赖
 var $ = require('jquery');
 var Spinning = require('./spinning');
 
 // 通过 exports 对外提供接口
 exports.doSomething = ...
 
 // 或者通过 module.exports 提供整个接口
 module.exports = ...
 
});

在页面中加载模块

//在 hello.html 页尾,通过 script 引入 sea.js 后,有一段配置代码:
 
// seajs 的简单配置
seajs.config({
 base: "../sea-modules/",
 alias: {
  "jquery": "jquery/jquery/1.10.1/jquery.js"
 }
})
 
// 加载入口模块
seajs.use("../static/hello/src/main")

以上就是关于javascript模块化的简单介绍,希望对大家学习javascript模块化有所帮助。

Javascript 相关文章推荐
JavaScript在IE中“意外地调用了方法或属性访问”
Nov 19 Javascript
Javascript 键盘事件的组合使用实现代码
May 04 Javascript
javascript实现促销倒计时+fixed固定在底部
Sep 18 Javascript
获取3个数组不重复的值的具体实现
Dec 30 Javascript
炫酷的js手风琴效果
Oct 13 Javascript
JS定时器用法分析【时钟与菜单中的应用】
Dec 21 Javascript
详解使用angular-cli发布i18n多国语言Angular应用
May 20 Javascript
JQuery EasyUI 结合ztrIee的后台页面开发实例
Sep 01 jQuery
详解在Vue中使用TypeScript的一些思考(实践)
Jul 06 Javascript
关于微信小程序获取小程序码并接受buffer流保存为图片的方法
Jun 07 Javascript
Jquery滑动门/tab切换实现方法完整示例
Jun 05 jQuery
JS实现纸牌发牌动画
Jan 19 Javascript
jquery编写Tab选项卡滚动导航切换特效
Jul 17 #Javascript
js仿QQ中对联系人向左滑动、滑出删除按钮的操作
Apr 07 #Javascript
jQuery实现简单滚动动画效果
Apr 07 #Javascript
基于javascript bootstrap实现生日日期联动选择
Apr 07 #Javascript
原生js制作日历控件实例分享
Apr 06 #Javascript
基于HTML模板和JSON数据的JavaScript交互(移动端)
Apr 06 #Javascript
JavaScript中实现无缝滚动、分享到侧边栏实例代码
Apr 06 #Javascript
You might like
聊天室php&mysql(四)
2006/10/09 PHP
php生成数组的使用示例 php全组合算法
2014/01/16 PHP
thinkphp缓存技术详解
2014/12/09 PHP
php+redis在实际项目中HTTP 500: Internal Server Error故障排除
2017/02/05 PHP
PHP实现的AES加密、解密封装类与用法示例
2018/08/02 PHP
PHP基于openssl实现非对称加密代码实例
2020/06/19 PHP
Javascript实例教程(19) 使用HoTMetal(3)
2006/12/23 Javascript
关于javascript中this关键字(翻译+自我理解)
2010/10/20 Javascript
juqery 学习之三 选择器 可见性 元素属性
2010/11/25 Javascript
javascript 星级评分效果(手写)
2012/12/24 Javascript
如何使用HTML5地理位置定位功能
2015/04/27 Javascript
js实现的彩色方块飞舞奇幻效果
2016/01/27 Javascript
简单理解JavaScript中的封装与继承特性
2016/03/19 Javascript
Bootstrap表单组件教程详解
2016/04/26 Javascript
js编写三级联动简单案例
2016/12/21 Javascript
JavaScript优化以及前段开发小技巧
2017/02/02 Javascript
JavaScript面向对象继承原理与实现方法分析
2018/08/09 Javascript
Vue刷新修改页面中数据的方法
2018/09/16 Javascript
vue router 传参获取不到的解决方式
2019/11/13 Javascript
python使用wxPython打开并播放wav文件的方法
2015/04/24 Python
python中requests爬去网页内容出现乱码问题解决方法介绍
2017/10/25 Python
为什么从Python 3.6开始字典有序并效率更高
2019/07/15 Python
python 3.7.4 安装 opencv的教程
2019/10/10 Python
美体小铺加拿大官方网站:The Body Shop加拿大
2016/10/30 全球购物
FC-Moto丹麦:欧洲最大的摩托车服装和头盔商店之一
2019/08/20 全球购物
JSP和Servlet有哪些相同点和不同点,他们之间的联系是什么?
2015/10/22 面试题
医学生个人求职信范文
2013/09/24 职场文书
《胡杨》教学反思
2014/02/16 职场文书
青春励志演讲稿范文
2014/08/25 职场文书
迎新生标语大全
2014/10/06 职场文书
2014年流动人口工作总结
2014/11/26 职场文书
2015年信访维稳工作总结
2015/04/07 职场文书
2015年服务员个人工作总结
2015/05/27 职场文书
php字符串倒叙
2021/04/01 PHP
使用python如何删除同一文件夹下相似的图片
2021/05/07 Python
Vue实现tab导航栏并支持左右滑动功能
2021/06/28 Vue.js