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 相关文章推荐
利用JQuery的load函数动态加载其它页面的内容的实现代码
Dec 14 Javascript
使用jquery实现简单的ajax
Jul 08 Javascript
基于jquery异步传输json数据格式实例代码
Nov 23 Javascript
js如何调用qq互联api实现第三方登录
Mar 28 Javascript
JS组件Bootstrap Select2使用方法详解
Apr 17 Javascript
BootStrap学习系列之Bootstrap Typeahead 组件实现百度下拉效果(续)
Jul 07 Javascript
Bootstrap响应式侧边栏改进版
Sep 17 Javascript
微信小程序 获取微信OpenId详解及实例代码
Oct 31 Javascript
jQuery Easy UI中根据第一个下拉框选中的值设置第二个下拉框是否可以编辑
Nov 29 Javascript
浅谈在Vue-cli里基于axios封装复用请求
Nov 06 Javascript
微信小程序如何修改radio和checkbox的默认样式和图标
Jul 24 Javascript
VUE中鼠标滚轮使div左右滚动的方法详解
Dec 14 Vue.js
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制作静态网站的模板框架(一)
2006/10/09 PHP
PHP 最大运行时间 max_execution_time修改方法
2010/03/08 PHP
PHP生成不同颜色、不同大小的tag标签函数
2013/09/23 PHP
destoon实现VIP排名一直在前面排序的方法
2014/08/21 PHP
Zend Framework教程之Zend_Registry对象用法分析
2016/03/22 PHP
php获取一定范围内取N个不重复的随机数
2016/05/28 PHP
ie 调试javascript的工具
2009/04/29 Javascript
JavaScript 闭包深入理解(closure)
2009/05/27 Javascript
Javascript 继承实现例子
2009/08/12 Javascript
第一个JavaScript入门基础 document.write输出
2010/02/22 Javascript
Lazy Load 延迟加载图片的jQuery插件中文使用文档
2012/10/18 Javascript
JQuery实现简单时尚快捷的气泡提示插件
2012/12/20 Javascript
js通过地址栏给action传值(中文乱码全是问号)
2013/05/02 Javascript
Jquery 类网页微信二维码图块滚动效果具体实现
2013/10/14 Javascript
jquery自定义滚动条插件示例分享
2014/02/21 Javascript
js实现对ajax请求面向对象的封装
2016/01/08 Javascript
Bootstrap 3的box-sizing样式导致UEditor控件的图片无法正常缩放的解决方案
2016/09/15 Javascript
JavaScript计算值然后把值嵌入到html中的实现方法
2016/10/29 Javascript
Vuex 使用及简单实例(计数器)
2018/08/29 Javascript
Node+OCR实现图像文字识别功能
2018/11/26 Javascript
vue router 传参获取不到的解决方式
2019/11/13 Javascript
[54:53]2014 DOTA2国际邀请赛中国区预选赛 LGD-GAMING VS CIS 第二场
2014/05/23 DOTA
编写Python脚本把sqlAlchemy对象转换成dict的教程
2015/05/29 Python
Python的Django框架中的数据过滤功能
2015/07/17 Python
Python中getattr函数和hasattr函数作用详解
2016/06/14 Python
Python向excel中写入数据的方法
2019/05/05 Python
win10下python2和python3共存问题解决方法
2019/12/23 Python
python通用读取vcf文件的类(复制粘贴即可用)
2020/02/29 Python
Python基于Twilio及腾讯云实现国际国内短信接口
2020/06/18 Python
如何利用find命令查找文件
2016/11/18 面试题
小学毕业感言300字
2014/02/19 职场文书
财产公证书
2014/04/10 职场文书
活动总结报告怎么写
2014/07/03 职场文书
详解Python+OpenCV进行基础的图像操作
2022/02/15 Python
“鬼灭之刃”热度不减,其成功背后的原因是什么?
2022/03/22 日漫
Win11怎么添加用户?Win11添加用户账户的方法
2022/07/15 数码科技