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 相关文章推荐
解密效果
Jun 23 Javascript
javascript 一个函数对同一元素的多个事件响应
Jul 25 Javascript
转换json格式的日期为Javascript对象的函数
Jul 13 Javascript
基于jQuery的input输入框下拉提示层(自动邮箱后缀名)
Jun 14 Javascript
使用jQuery UI的tooltip函数修饰title属性的气泡悬浮框
Jun 24 Javascript
js实现仿百度汽车频道选择汽车图片展示实例
May 06 Javascript
使用impress.js制作幻灯片
Sep 09 Javascript
WebGL利用FBO完成立方体贴图效果完整实例(附demo源码下载)
Jan 26 Javascript
Vue自定义事件(详解)
Aug 19 Javascript
vue 解决循环引用组件报错的问题
Sep 06 Javascript
Vuepress 搭建带评论功能的静态博客的实现
Feb 17 Javascript
Node.js 深度调试方法解析
Jul 28 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
实用函数2
2007/11/08 PHP
php的正则处理函数总结分析
2008/06/20 PHP
Laravel中的chunk组块结果集处理与注意问题
2018/08/15 PHP
jquery中dom操作和事件的实例学习 仿yahoo邮箱登录框的提示效果
2011/11/30 Javascript
基于jquery的textarea发布框限制文字字数输入(添加中文识别)
2012/02/16 Javascript
一些常用弹出窗口/拖放/异步文件上传等实用代码
2013/01/06 Javascript
jquery动态加载js三种方法实例
2013/08/03 Javascript
控制文字内容的显示与隐藏示例
2014/06/11 Javascript
返回顶部按钮响应滚动且动态显示与隐藏
2014/10/14 Javascript
javascript将数字转换整数金额大写的方法
2015/01/27 Javascript
JavaScript实现节点的删除与序号重建实例
2015/08/05 Javascript
页面get请求 中文参数方法乱码问题的快速解决方法
2016/05/31 Javascript
微信小程序 设置启动页面的两种方法
2017/03/09 Javascript
vue事件修饰符和按键修饰符用法总结
2017/07/25 Javascript
react-native-tab-navigator组件的基本使用示例代码
2017/09/07 Javascript
JS使用正则表达式找出最长连续子串长度
2017/10/26 Javascript
vue使用ajax获取后台数据进行显示的示例
2018/08/09 Javascript
Element ui 下拉多选时新增一个选择所有的选项
2019/08/21 Javascript
TensorFlow saver指定变量的存取
2018/03/10 Python
Python爬虫包BeautifulSoup简介与安装(一)
2018/06/17 Python
Opencv-Python图像透视变换cv2.warpPerspective的示例
2019/04/11 Python
python使用pandas处理大数据节省内存技巧(推荐)
2019/05/05 Python
解决Django layui {{}}冲突的问题
2019/08/29 Python
Python提取PDF内容的方法(文本、图像、线条等)
2019/09/25 Python
Python实现报警信息实时发送至邮箱功能(实例代码)
2019/11/11 Python
python序列化与数据持久化实例详解
2019/12/20 Python
如何以Winsows Service方式运行JupyterLab
2020/08/30 Python
Django缓存Cache使用详解
2020/11/30 Python
通过HTML5 Canvas API绘制弧线和圆形的教程
2016/03/14 HTML / CSS
存储过程的优点有哪些
2012/09/27 面试题
一名女生的自荐信
2013/12/08 职场文书
考试退步检讨书
2014/01/15 职场文书
介绍信范文
2015/01/31 职场文书
伏羲庙导游词
2015/02/09 职场文书
国情备忘录观后感
2015/06/04 职场文书
Java方法重载和方法重写的区别到底在哪?
2021/06/11 Java/Android