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 相关文章推荐
JQuery获取与设置HTML元素的内容或文本的实现代码
Jun 20 Javascript
javascript中clipboardData对象用法详解
May 13 Javascript
详解JavaScript中的forEach()方法的使用
Jun 08 Javascript
Bootstrap Paginator分页插件与ajax相结合实现动态无刷新分页效果
May 27 Javascript
深入理解JavaScript内置函数
Jun 03 Javascript
微信小程序 教程之条件渲染
Oct 18 Javascript
浅谈javascript中的 “ &amp;&amp; ” 和 “ || ”
Feb 02 Javascript
jQuery插件FusionCharts实现的3D柱状图效果实例【附demo源码下载】
Mar 03 Javascript
JS+HTML5实现获取手机验证码倒计时按钮
Aug 08 Javascript
基于游标的分页接口实现代码示例
Nov 12 Javascript
js实现轮播图特效
May 28 Javascript
jQuery列表动态增加和删除的实现方法
Nov 05 jQuery
文本域中换行符的替换示例
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
php定义一个参数带有默认值的函数实例分析
2015/03/16 PHP
Zend Framework实现具有基本功能的留言本(附demo源码下载)
2016/03/22 PHP
yii框架无限极分类的实现方法
2017/04/08 PHP
PHP手机号中间四位用星号*代替显示的实例
2017/06/02 PHP
PHP的介绍以及优势详细分析
2019/09/05 PHP
javascript下判断一个对象是否具有指定名称的属性的的代码
2010/01/11 Javascript
超实用的JavaScript代码段 附使用方法
2016/05/22 Javascript
项目实践一图片上传之form表单还是base64前端图片压缩(前端图片压缩)
2016/07/28 Javascript
快速掌握jQuery插件WebUploader文件上传
2016/11/07 Javascript
jQuery动态追加页面数据以及事件委托详解
2017/05/06 jQuery
使用mint-ui开发项目的一些心得(分享)
2017/09/07 Javascript
完美解决手机浏览器顶部下拉出现网页源或刷新的问题
2017/11/30 Javascript
详解解决使用axios发送json后台接收不到的问题
2018/06/27 Javascript
Vue.js 事件修饰符的使用教程
2018/11/01 Javascript
vue安装遇到的5个报错及解决方法
2019/06/12 Javascript
uni-app使用countdown插件实现倒计时
2020/11/01 Javascript
Python(Tornado)模拟登录小米抢手机
2013/11/12 Python
Python字符串格式化的方法(两种)
2017/09/19 Python
基于Python中单例模式的几种实现方式及优化详解
2018/01/09 Python
用Django实现一个可运行的区块链应用
2018/03/08 Python
详解tensorflow载入数据的三种方式
2018/04/24 Python
解决nohup执行python程序log文件写入不及时的问题
2019/01/14 Python
Flask框架钩子函数功能与用法分析
2019/08/02 Python
Django 返回json数据的实现示例
2020/03/05 Python
Jupyter notebook 远程配置及SSL加密教程
2020/04/14 Python
Too Faced官网:美国知名彩妆品牌
2017/03/07 全球购物
捷克鲜花配送:Florea.cz
2018/10/29 全球购物
回馈慈善的设计师太阳镜:DIFF eyewear
2019/10/17 全球购物
Lentiamo荷兰:在线订购隐形眼镜、隐形眼镜液和太阳镜
2019/10/25 全球购物
西安当代医院管理研究院笔试题
2015/12/11 面试题
自考生毕业自我鉴定
2013/10/10 职场文书
测绘工程个人的自我评价
2013/11/23 职场文书
美丽家庭事迹材料
2014/05/03 职场文书
计算机系本科生求职信
2014/05/31 职场文书
《风筝》教学反思
2016/02/23 职场文书
浅谈Python中对象是如何被调用的
2022/04/06 Python