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 相关文章推荐
MC Dialog js弹出层 完美兼容多浏览器(5.6更新)
May 06 Javascript
js中iframe调用父页面的方法
Oct 30 Javascript
JavaScript事件类型中UI事件详解
Jan 14 Javascript
BootStrap Progressbar 实现大文件上传的进度条的实例代码
Jun 27 Javascript
浅谈jquery的html方法里包含特殊字符的处理
Nov 30 Javascript
原生js实现无缝轮播图效果
Jan 11 Javascript
详解webpack4多入口、多页面项目构建案例
May 25 Javascript
VUE在for循环里面根据内容值动态的加入class值的方法
Aug 12 Javascript
vue.js实现的全选与全不选功能示例【基于elementui】
Dec 03 Javascript
Jquery属性的获取/设置及样式添加/删除操作技巧分析
Dec 23 jQuery
基于node+websocket+html实现腾讯课堂聊天室聊天功能
Mar 04 Javascript
在vue中使用回调函数,this调用无效的解决
Aug 11 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
收音机怀古---春雷3P7图片欣赏
2021/03/02 无线电
推荐一款MAC OS X 下php集成开发环境mamp
2014/11/08 PHP
thinkPHP5实现数据库添加内容的方法
2017/10/25 PHP
PHP中str_split()函数的用法讲解
2019/04/11 PHP
json-lib出现There is a cycle in the hierarchy解决办法
2010/02/24 Javascript
JS TextArea字符串长度限制代码集合
2012/10/31 Javascript
JS脚本defer的作用示例介绍
2014/01/02 Javascript
js与css实现弹出层覆盖整个页面的方法
2014/12/13 Javascript
简介JavaScript中用于处理正切的Math.tan()方法
2015/06/15 Javascript
在JavaScript中访问字符串的子串
2015/07/07 Javascript
jQuery根据ID、CLASS、等获取对象的实例
2016/12/04 Javascript
详谈JavaScript的闭包及应用
2017/01/17 Javascript
关于Sequelize连接查询时inlude中model和association的区别详解
2017/02/27 Javascript
浅析vue-router原理
2018/10/19 Javascript
使用python爬虫实现网络股票信息爬取的demo
2018/01/05 Python
python 连接各类主流数据库的实例代码
2018/01/30 Python
Python数据结构之图的应用示例
2018/05/11 Python
python 文件转成16进制数组的实例
2018/07/09 Python
基于pytorch的lstm参数使用详解
2020/01/14 Python
python 删除excel表格重复行,数据预处理操作
2020/07/06 Python
Python使用windows设置定时执行脚本
2020/11/12 Python
numba提升python运行速度的实例方法
2021/01/25 Python
关于HTML5你必须知道的28个新特性,新技巧以及新技术
2012/05/28 HTML / CSS
Madewell澳大利亚官方网站:美国休闲服饰品牌
2019/07/18 全球购物
英国排名第一的宠物店:PetPlanet
2020/02/02 全球购物
CSS实现fullpage.js全屏滚动效果的示例代码
2021/03/24 HTML / CSS
公司道歉信范文
2014/01/09 职场文书
期末学生评语大全
2014/04/24 职场文书
婚前保证书
2014/04/29 职场文书
本科毕业生自荐信
2014/05/26 职场文书
2014优秀大学生简历自我评价
2014/09/15 职场文书
慰问信范文
2015/02/14 职场文书
工会工作个人总结
2015/03/03 职场文书
部门经理助理岗位职责
2015/04/13 职场文书
春风化雨观后感
2015/06/11 职场文书
昆虫记读书笔记
2015/06/26 职场文书