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 相关文章推荐
javascript document.execCommand() 常用解析
Dec 14 Javascript
JS去掉第一个字符和最后一个字符的实现代码
Feb 20 Javascript
js实现简单随机抽奖的方法
Jan 27 Javascript
JavaScript中的splice()方法使用详解
Jun 09 Javascript
jQuery鼠标经过方形图片切换成圆边效果代码分享
Aug 20 Javascript
详细讲解JavaScript中的this绑定
Oct 10 Javascript
微信小程序开发之录音机 音频播放 动画实例 (真机可用)
Dec 08 Javascript
微信小程序授权登录及解密unionId出错的方法
Sep 26 Javascript
vue实现鼠标经过动画
Oct 16 Javascript
vue实现评价星星功能
Jun 30 Javascript
浅谈vue生命周期共有几个阶段?分别是什么?
Aug 07 Javascript
JavaScript高级程序设计之基本引用类型
Nov 17 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
PHP运行SVN命令显示某用户的文件更新记录的代码
2014/01/03 PHP
PHP递归删除目录几个代码实例
2014/04/21 PHP
php对象和数组相互转换的方法
2015/05/12 PHP
PHP数组编码gbk与utf8互相转换的两种方法
2016/09/01 PHP
CentOS 7.2 下编译安装PHP7.0.10+MySQL5.7.14+Nginx1.10.1的方法详解(mini版本)
2016/09/01 PHP
PHP的HTTP客户端Guzzle简单使用方法分析
2019/10/30 PHP
Code: write(s,d) 输出连续字符串
2007/08/19 Javascript
JavaScript定义类或函数的几种方式小结
2011/01/09 Javascript
node.js开发中使用Node Supervisor实现监测文件修改并自动重启应用
2014/11/04 Javascript
jquery中获取元素里某一特定子元素的代码
2014/12/02 Javascript
jquery判断复选框选中状态以及区分attr和prop
2015/12/18 Javascript
JS实现动画兼容性的transition和transform实例分析
2016/12/13 Javascript
Bootstrap Table从零开始
2017/06/30 Javascript
Angular 4根据组件名称动态创建出组件的方法教程
2017/11/01 Javascript
vue项目常用组件和框架结构介绍
2017/12/24 Javascript
JS 正则表达式验证密码、邮箱格式的实例代码
2018/10/28 Javascript
解决layui轮播图有数据不显示的情况
2019/09/16 Javascript
浅析vue-router实现原理及两种模式
2020/02/11 Javascript
[01:50]2014DOTA2西雅图邀请赛 专访欢乐周宝龙
2014/07/08 DOTA
[01:03:00]DOTA2上海特级锦标赛A组败者赛 EHOME VS CDEC第一局
2016/02/25 DOTA
python学习入门细节知识点
2018/03/29 Python
Win10下python3.5和python2.7环境变量配置教程
2018/09/18 Python
python调用matlab的m自定义函数方法
2019/02/18 Python
python3.5安装python3-tk详解
2019/04/26 Python
python实现井字棋小游戏
2020/03/04 Python
美国南加州的原创极限运动潮牌:Vans(范斯)
2016/08/05 全球购物
办公室文秘自我鉴定
2013/09/21 职场文书
自立自强的名人事例
2014/02/10 职场文书
大学生职业生涯规划书
2014/03/14 职场文书
2014年教师节演讲稿范文
2014/09/10 职场文书
迎新生标语大全
2014/10/06 职场文书
学生个人总结范文
2015/02/15 职场文书
2015年爱牙日活动总结
2015/03/23 职场文书
申论不会写怎么办?教您掌握这6点思维和原则
2019/07/17 职场文书
JS数组的常用方法整理
2021/03/31 Javascript
Vue中使用import进行路由懒加载的原理分析
2022/04/01 Vue.js