Seajs的学习笔记


Posted in Javascript onMarch 04, 2014

1.简介

Seajs,一个Web模块加载框架,追求简单、自然的代码书写和组织方式,:Sea.js 遵循 CMD 规范,模块化JS代码。依赖的自动加载、配置的简洁清晰,可以让程序员更多地专注编码。

2.优缺点

优点:
1).提高可维护性。
2).模块化编程。
3).动态加载,前端性能优化

缺点:
1).学习文档偏少且混乱,会更改团队使用JS的编写习惯,必须使用模块化编程。
2).不太适合团队目前的情况,多JS文件但少改动,动态加载优势和模块化优势不明显。
3). 需要配套使用SPM工具,JS的打包和管理工具。

2.什么是CMD 和AMD ?

异步模块定义(AMD)是Asynchronous Module Definition的缩写,是 RequireJS 在推广过程中对模块定义的规范化产出。
通用模块定义(CMD)是Common Module Definition的缩写,是SeaJS 在推广过程中对模块定义的规范化产出。
RequireJS 和 SeaJS 都是模块化框架的代表,AMD和CMD,是他们各自定义模块化的方式,大同小异,主要是代码风格和API不同。

3.如何使用?

<script src="../js/examples-master/sea-modules/seajs/seajs/2.1.1/sea.js"></script>
<script>
     //配置js路径
    seajs.config({
        alias:{
            "jquery":"../examples-master/sea-modules/jquery/jquery/1.10.1/jquery.js"
        }
    });
     //加载模块
    seajs.use('../js/seajs/init',function($){
        $("#test_div").click(function(){alert(1);});
    });
</script>

//init.js
define(function(require,exports,module){
    var $ = require('jquery');
    return $;
});
Javascript 相关文章推荐
window.open被浏览器拦截后的自定义提示效果代码
Nov 19 Javascript
JavaScript实现的简单拖拽效果
Jun 01 Javascript
JavaScript与HTML的结合方法详解
Nov 23 Javascript
AngularJS入门教程之双向绑定详解
Aug 18 Javascript
vuejs动态组件给子组件传递数据的方法详解
Sep 09 Javascript
javascript 删除数组元素和清空数组的简单方法
Feb 24 Javascript
通过示例彻底搞懂js闭包
Aug 10 Javascript
vue2.0移除或更改的一些东西(移除index key)
Aug 28 Javascript
webpack本地开发环境无法用IP访问的解决方法
Mar 20 Javascript
JavaScript数组方法的错误使用例子
Sep 13 Javascript
在vue项目中正确使用iconfont的方法
Sep 28 Javascript
JS匿名函数内部this指向问题详析
May 10 Javascript
文本域中换行符的替换示例
Mar 04 #Javascript
为jquery的ajaxfileupload增加附加参数的方法
Mar 04 #Javascript
Document.location.href和.replace的区别示例介绍
Mar 04 #Javascript
LABjs、RequireJS、SeaJS的区别
Mar 04 #Javascript
js的Boolean对象初始值示例
Mar 04 #Javascript
js动态拼接正则表达式的两种方法
Mar 04 #Javascript
8个实用的jQuery技巧
Mar 04 #Javascript
You might like
Symfony核心类概述
2016/03/17 PHP
php生成酷炫的四个字符验证码
2016/04/22 PHP
PHP二维数组矩形转置实例
2016/07/20 PHP
Win7环境下Apache连接MySQL提示连接已重置的解决办法
2017/05/09 PHP
PHP预定义超全局数组变量小结
2018/08/20 PHP
父窗口获取弹出子窗口文本框的值
2006/06/27 Javascript
计算新浪Weibo消息长度(还可以输入119字)
2013/07/02 Javascript
httpclient模拟登陆具体实现(使用js设置cookie)
2013/12/11 Javascript
ZeroClipboard插件实现多浏览器复制功能(支持firefox、chrome、ie6)
2014/08/30 Javascript
jquery实现可关闭的倒计时广告特效代码
2015/09/02 Javascript
JavaScript设计模式初探
2016/01/07 Javascript
javascript如何定义对象数组
2016/06/07 Javascript
多功能jQuery树插件zTree实现权限列表简单实例
2016/07/12 Javascript
Angular.js与node.js项目里用cookie校验账户登录详解
2017/02/22 Javascript
JS按钮闪烁功能的实现代码
2017/07/21 Javascript
使用nvm管理不同版本的node与npm的方法
2017/10/31 Javascript
微信小程序用户授权,以及判断登录是否过期的方法
2019/05/10 Javascript
原生js实现each方法实例代码详解
2019/05/27 Javascript
js常见遍历操作小结
2019/06/06 Javascript
基于vue实现图片验证码倒计时60s功能
2019/12/10 Javascript
使用numba对Python运算加速的方法
2018/10/15 Python
Python实现钉钉发送报警消息的方法
2019/02/20 Python
Python 生成一个从0到n个数字的列表4种方法小结
2019/11/28 Python
Python日志:自定义输出字段 json格式输出方式
2020/04/27 Python
python 实现客户端与服务端的通信
2020/12/23 Python
python+selenium爬取微博热搜存入Mysql的实现方法
2021/01/27 Python
Ubuntu20.04环境安装tensorflow2的方法步骤
2021/01/29 Python
Clearly新西兰:购买眼镜、太阳镜和隐形眼镜
2018/04/26 全球购物
美国玩具公司:U.S.Toy
2018/05/19 全球购物
Spongelle官网:美国的创意护肤洗护品牌
2019/05/15 全球购物
学生会竞选自荐信
2013/10/12 职场文书
工程力学硕士生的自我评价范文
2013/11/16 职场文书
教师实习自我鉴定
2013/12/14 职场文书
交通安全教育制度
2014/02/02 职场文书
领导干部学习十八届五中全会精神心得体会
2016/01/05 职场文书
2016企业先进集体事迹材料
2016/02/25 职场文书