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 相关文章推荐
JS弹出窗口代码大全(详细整理)
Dec 21 Javascript
输入自动提示搜索提示功能的javascript:sugggestion.js
Sep 02 Javascript
Java Mybatis框架入门基础教程
Sep 21 Javascript
JavaScript中的事件委托及好处
Jul 12 Javascript
JavaScript实现广告弹窗效果
Aug 09 Javascript
详解jQuery中基本的动画方法
Dec 14 Javascript
localStorage的黑科技-js和css缓存机制
Feb 06 Javascript
详解Vue2.0组件的继承与扩展
Nov 23 Javascript
layui点击弹框页面 表单请求的方法
Sep 21 Javascript
javascript使用Blob对象实现的下载文件操作示例
Apr 18 Javascript
vue如何在用户要关闭当前网页时弹出提示的实现
May 31 Javascript
浅析微信小程序自定义日历组件及flex布局最后一行对齐问题
Oct 29 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
ExtJS与PHP、MySQL实现存储的方法
2010/04/02 PHP
ThinkPHP的RBAC(基于角色权限控制)深入解析
2013/06/17 PHP
PHP中多维数组的foreach遍历示例
2014/06/13 PHP
PHP常用操作类之通信数据封装类的实现
2017/07/16 PHP
jquery.boxy插件的iframe扩展代码
2010/07/02 Javascript
当鼠标移动到图片上时跟随鼠标显示放大的图片效果
2013/06/06 Javascript
js一般方法改写成面向对象方法的无限级折叠菜单示例代码
2013/07/04 Javascript
jquery实现html页面 div 假分页有原理有代码
2014/09/06 Javascript
JavaScript实现的经典文件树菜单效果
2015/09/08 Javascript
AngularJS基础 ng-dblclick 指令用法
2016/08/01 Javascript
AngularJS中$watch和$timeout的使用示例
2016/09/20 Javascript
AngularJS入门教程之与服务器(Ajax)交互操作示例【附完整demo源码下载】
2016/11/02 Javascript
微信小程序-小说阅读小程序实例(demo)
2017/01/12 Javascript
js 输入框 正则表达式(菜鸟必看教程)
2017/02/19 Javascript
在一个页面实现两个zTree联动的方法
2017/12/20 Javascript
Vue.js单向绑定和双向绑定实例分析
2018/08/14 Javascript
跨域请求两种方法 jsonp和cors的实现
2018/11/11 Javascript
vue elementui el-form rules动态验证的实例代码详解
2019/05/23 Javascript
JavaScript实现表单验证功能
2020/12/09 Javascript
[48:39]Ti4主赛事胜者组第一天 EG vs NEWBEE 2
2014/07/19 DOTA
[02:32]“虐狗”镜头慎点 2016国际邀请赛中国区预选赛现场玩家采访
2016/06/28 DOTA
python自动化unittest yaml使用过程解析
2020/02/03 Python
appium+python adb常用命令分享
2020/03/06 Python
python的launcher用法知识点总结
2020/08/07 Python
matplotlib交互式数据光标mpldatacursor的实现
2021/02/03 Python
详解HTML5中CSS外观属性
2020/09/10 HTML / CSS
草莓网化妆品加拿大网站:Strawberrynet Canada
2016/09/20 全球购物
C#可否对内存进行直接的操作
2015/02/26 面试题
vue 中 get / delete 传递数组参数方法
2021/03/23 Vue.js
汽车专业学生自我评价
2014/01/19 职场文书
广告设计应届生求职信
2014/03/01 职场文书
2014机关党员干部“正风肃纪”思想汇报
2014/09/15 职场文书
项目投资意向书范本
2015/05/09 职场文书
药品销售员2015年终工作总结
2015/10/22 职场文书
Win10鼠标轨迹怎么开 Win10显示鼠标轨迹方法
2022/04/06 数码科技
如何基于python实现单目三维重建详解
2022/06/25 Python