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 相关文章推荐
YUI的Tab切换实现代码
Apr 11 Javascript
jQuery EasyUI API 中文文档 - Parser 解析器
Sep 29 Javascript
JS控制图片翻转示例代码(兼容firefox,ie,chrome)
Dec 19 Javascript
javascript操作ul中li的方法
May 14 Javascript
JavaScript检测鼠标移动方向的方法
May 22 Javascript
JavaScript中this的四个绑定规则总结
Sep 26 Javascript
javascript添加前置0(补零)的几种方法
Jan 05 Javascript
jQuery实现checkbox即点即改批量删除及中间遇到的坑
Nov 11 jQuery
vue-cli开发时,关于ajax跨域的解决方法(推荐)
Feb 03 Javascript
Vue项目中如何引入icon图标
Mar 28 Javascript
js屏蔽退格键(backspace或者叫后退键与F5)
Feb 10 Javascript
JavaScript 禁止用户保存图片的实现代码
Apr 28 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
晋城吧对DiscuzX进行的前端优化要点
2010/09/05 PHP
ThinkPHP3.0略缩图不能保存到子目录的解决方法
2012/09/30 PHP
基于php split()函数的用法详解
2013/06/05 PHP
浅谈php中mysql与mysqli的区别分析
2013/06/10 PHP
php通过function_exists检测函数是否存在的方法
2015/03/18 PHP
基于Laravel 多个中间件的执行顺序详解
2019/10/21 PHP
Javascript 对象的解释
2008/11/24 Javascript
元素的内联事件处理函数的特殊作用域在各浏览器中存在差异
2011/01/12 Javascript
使用javascript获取flash加载的百分比的实现代码
2011/05/25 Javascript
JS按字节截取字符长度实例
2013/11/20 Javascript
jquery实现翻动fadeIn显示的方法
2015/03/05 Javascript
JS实现可点击展开与关闭的左侧广告代码
2015/09/02 Javascript
JavaScript实现经纬度转换成地址功能
2017/03/28 Javascript
Vue项目全局配置微信分享思路详解
2018/05/04 Javascript
jQuery 查找元素操作实例小结
2019/10/02 jQuery
解决vue 退出动画无效的问题
2020/08/09 Javascript
基于JS实现操作成功之后自动跳转页面
2020/09/25 Javascript
详解vite+ts快速搭建vue3项目以及介绍相关特性
2021/02/25 Vue.js
[02:22:36]《加油!DOTA》总决赛
2014/09/19 DOTA
python使用三角迭代计算圆周率PI的方法
2015/03/20 Python
在Python的Flask框架下使用sqlalchemy库的简单教程
2015/04/09 Python
深入探究Django中的Session与Cookie
2017/07/30 Python
python使用筛选法计算小于给定数字的所有素数
2018/03/19 Python
python语言元素知识点详解
2019/05/15 Python
Python3 实现串口两进程同时读写
2019/06/12 Python
PyQt QListWidget修改列表项item的行高方法
2019/06/20 Python
对django中foreignkey的简单使用详解
2019/07/28 Python
意大利制造的西装、衬衫和针对男士量身定制的服装:Lanieri
2018/04/08 全球购物
戴森西班牙官网:Dyson西班牙
2020/02/04 全球购物
求职简历推荐信范文
2013/12/02 职场文书
员工评语大全
2014/01/19 职场文书
餐饮收银员岗位职责
2014/02/07 职场文书
《圆明园的毁灭》教学反思
2014/02/28 职场文书
2014年大学班级工作总结
2014/11/14 职场文书
2014年终工作总结范本
2014/12/15 职场文书
买卖合同纠纷代理词
2015/05/25 职场文书