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 options属性集合操作代码
Dec 28 Javascript
jQuery Validation插件remote验证方式的Bug解决
Jul 01 Javascript
jQuery1.4.2与老版本json格式兼容的解决方法
Feb 12 Javascript
jQuery lazyLoad图片延迟加载插件的优化改造方法分享
Aug 13 Javascript
JS模仿编辑器实时改变文本框宽度和高度大小的方法
Aug 17 Javascript
AngularJS入门教程一:路由用法初探
May 27 Javascript
原生js的ajax和解决跨域的jsonp(实例讲解)
Oct 16 Javascript
使用JS实现导航切换时高亮显示的示例讲解
Aug 22 Javascript
webpack优化的深入理解
Dec 10 Javascript
vuex实现的简单购物车功能示例
Feb 13 Javascript
使用jQuery mobile NuGet让你的网站在移动设备上同样精彩
Jun 18 jQuery
2019年度web前端面试题总结(主要为Vue面试题)
Jan 12 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来自动调用不同服务器上的flash
2006/10/09 PHP
解析PHP将对象转换成数组的方法(兼容多维数组类型)
2013/06/21 PHP
PHP改进计算字符串相似度的函数similar_text()、levenshtein()
2014/10/27 PHP
thinkphp中U方法按路由规则生成url的方法
2018/03/12 PHP
PHP的微信支付接口使用方法讲解
2019/03/08 PHP
js使用for循环及if语句判断多个一样的name
2014/09/09 Javascript
浅谈Sticky组件的改进实现
2016/03/22 Javascript
js编写当天简单日历效果【实现代码】
2016/05/03 Javascript
在js中实现邮箱格式的验证方法(推荐)
2016/10/24 Javascript
关于ES6的六个小特性(二)
2017/02/20 Javascript
Vue中render函数的使用方法
2018/01/31 Javascript
JS获取当前时间的实例代码(昨天、今天、明天)
2018/11/13 Javascript
详解服务端预渲染之Nuxt(介绍篇)
2019/04/07 Javascript
JS实现图片切换特效
2019/12/23 Javascript
JS实现简单贪吃蛇小游戏
2020/10/28 Javascript
[34:44]Liquid vs TNC Supermajor 胜者组 BO3 第二场 6.4
2018/06/05 DOTA
[40:27]完美世界DOTA2联赛PWL S3 PXG vs GXR 第一场 12.19
2020/12/24 DOTA
编写Python爬虫抓取豆瓣电影TOP100及用户头像的方法
2016/01/20 Python
python绘制条形图方法代码详解
2017/12/19 Python
Python中列表与元组的乘法操作示例
2018/02/10 Python
浅谈Python中函数的定义及其调用方法
2019/07/19 Python
Python常驻任务实现接收外界参数代码解析
2020/07/21 Python
html5默认气泡修改的代码详解
2020/03/13 HTML / CSS
阿迪达斯香港官网:adidas香港
2019/11/09 全球购物
两道JAVA笔试题
2016/09/14 面试题
实习自我评价怎么写
2013/12/02 职场文书
党员廉洁自律承诺书
2014/05/26 职场文书
自主招生自荐信格式范文
2015/03/25 职场文书
反腐倡廉主题教育活动总结
2015/05/07 职场文书
职位证明模板
2015/06/23 职场文书
新闻稿怎么写
2015/07/18 职场文书
小学作文之描写天气
2019/08/15 职场文书
导游词之河北邯郸
2019/09/12 职场文书
读《解忧杂货店》有感:请相信一切都是最好的安排
2019/11/07 职场文书
java中用float时,数字后面加f,这样是为什么你知道吗
2021/09/04 Java/Android
TV动画「神渣☆爱豆」公开第一弹主视觉图
2022/03/21 日漫