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 相关文章推荐
VBScript版代码高亮
Jun 26 Javascript
javascript调试之DOM断点调试法使用技巧分享
Apr 15 Javascript
javascript中call和apply的用法示例分析
Apr 02 Javascript
原生javascript实现的一个简单动画效果
Mar 30 Javascript
AngularJS实现动态编译添加到dom中的方法
Nov 04 Javascript
vue.js+Element实现表格里的增删改查
Jan 18 Javascript
JavaScript中变量提升与函数提升经典实例分析
Jul 26 Javascript
vue自定义指令用法经典实例小结
Mar 16 Javascript
Javascript 对象(object)合并操作实例分析
Jul 30 Javascript
vue 监听窗口变化对页面部分元素重新渲染操作
Jul 28 Javascript
解决Vue watch里调用方法的坑
Nov 07 Javascript
ES6中的类(Class)示例详解
Dec 09 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
咖啡常见的种类
2021/03/03 新手入门
如何正确理解PHP的错误信息
2006/10/09 PHP
实例讲解通过​PHP创建数据库
2019/01/20 PHP
浅谈php使用curl模拟多线程发送请求
2019/03/08 PHP
怎么让脚本或里面的函数在所有图片都载入完毕的时候执行
2006/10/17 Javascript
用js得到网页中所有的div的id
2020/10/19 Javascript
js onpropertychange输入框 事件获取属性
2009/03/26 Javascript
javascript 无提示关闭窗口脚本
2009/08/17 Javascript
javascript 浏览器检测代码精简版
2010/03/04 Javascript
一个JQuery写的点击上下滚动的小例子
2011/08/27 Javascript
js多级树形弹出一个小窗口层(非常好用)实例代码
2013/03/19 Javascript
getAsDataURL在Firefox7.0下无法预览本地图片的解决方法
2013/11/15 Javascript
Javascript的严格模式strict mode详细介绍
2014/06/06 Javascript
jQuery实现页面滚动时动态加载内容的方法
2015/03/20 Javascript
JavaScript中使用Math.PI圆周率属性的方法
2015/06/14 Javascript
vue-cli3环境变量与分环境打包的方法示例
2019/02/18 Javascript
VUE注册全局组件和局部组件过程解析
2019/10/10 Javascript
JS立即执行的匿名函数用法分析
2019/11/04 Javascript
[45:15]Optic vs VP 2018国际邀请赛淘汰赛BO3 第一场 8.24
2018/08/25 DOTA
python网页请求urllib2模块简单封装代码
2014/02/07 Python
Python实现的NN神经网络算法完整示例
2018/06/19 Python
Python使用matplotlib绘制随机漫步图
2018/08/27 Python
python 分离文件名和路径以及分离文件名和后缀的方法
2018/10/21 Python
python实现修改固定模式的字符串内容操作示例
2019/12/30 Python
django 数据库 get_or_create函数返回值是tuple的问题
2020/05/15 Python
Python使用paramiko连接远程服务器执行Shell命令的实现
2021/03/04 Python
如何转换一个字符串到enum值
2014/04/12 面试题
接口可以包含哪些成员
2012/09/30 面试题
测绘工程本科生求职信
2013/10/10 职场文书
银行求职信
2014/05/31 职场文书
教师个人培训总结
2015/02/11 职场文书
趣味运动会赞词
2015/07/22 职场文书
MySQL 数据丢失排查案例
2021/05/08 MySQL
在pycharm中无法import所安装的库解决方案
2021/05/31 Python
Python中字符串对象语法分享
2022/02/24 Python
Oracle锁表解决方法的详细记录
2022/06/05 Oracle