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接收get传递的值的代码
Nov 30 Javascript
删除节点的jquery代码
Jan 13 Javascript
JavaScript常用脚本汇总(三)
Mar 04 Javascript
jQuery File Upload文件上传插件使用详解
Dec 06 Javascript
如何实现星星评价(jquery.raty.js插件)
Dec 21 Javascript
JS日程管理插件FullCalendar中文说明文档
Feb 06 Javascript
详解vue-cli之webpack3构建全面提速优化
Dec 25 Javascript
vue单个组件实现无限层级多选菜单功能
Apr 10 Javascript
微信小程序select下拉框实现效果
May 15 Javascript
五分钟搞懂Vuex实用知识(小结)
Aug 12 Javascript
功能完善的小程序日历组件的实现
Mar 31 Javascript
js实现简单的点名器随机色实例代码
Sep 20 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安装全攻略:APACHE
2006/10/09 PHP
php的ZipArchive类用法实例
2014/10/20 PHP
PHP微信开发之微信消息自动回复下所遇到的坑
2016/05/09 PHP
CI框架实现优化文件上传及多文件上传的方法
2017/01/04 PHP
Win7环境下Apache连接MySQL提示连接已重置的解决办法
2017/05/09 PHP
jQuery处理xml格式的返回数据(实例解析)
2013/11/28 Javascript
jQuery中的jQuery()方法用法分析
2014/12/27 Javascript
jquery ztree实现树的搜索功能
2016/02/25 Javascript
JS库之ParticlesJS使用简介
2017/09/12 Javascript
详解weex默认webpack.config.js改造
2018/01/08 Javascript
vue实现局部刷新的实现示例
2019/04/16 Javascript
微信小程序导航栏跟随滑动效果的实现代码
2019/05/14 Javascript
Js视频播放器插件Video.js使用方法详解
2020/02/04 Javascript
微信小程序图片右边加两行文字的代码
2020/04/23 Javascript
vue 需求 data中的数据之间的调用操作
2020/08/05 Javascript
js实现日历
2020/11/07 Javascript
Python的Bottle框架的一些使用技巧介绍
2015/04/08 Python
使用python实现rsa算法代码
2016/02/17 Python
实例解析Python设计模式编程之桥接模式的运用
2016/03/02 Python
python实现学生信息管理系统
2020/04/05 Python
python处理两种分隔符的数据集方法
2018/12/12 Python
Python使用Selenium爬取淘宝异步加载的数据方法
2018/12/17 Python
python爬虫爬取微博评论案例详解
2019/03/27 Python
代码实例讲解python3的编码问题
2019/07/08 Python
pip指定python位置安装软件包的方法
2019/07/12 Python
python3文件复制、延迟文件复制任务的实现方法
2019/09/02 Python
Python实现屏幕录制功能的代码
2020/03/02 Python
来自南加州灵感的工作和娱乐服装:TravisMathew
2019/05/01 全球购物
英国伦敦的睡衣品牌:Asceno
2019/10/06 全球购物
Collection和Collections的区别
2016/05/02 面试题
集体婚礼策划方案
2014/02/22 职场文书
同事打架检讨书
2015/05/06 职场文书
清明节主题班会
2015/08/14 职场文书
python中print格式化输出的问题
2021/04/16 Python
python 进阶学习之python装饰器小结
2021/09/04 Python
德生TECSUN S-2000使用手册文字版
2022/05/10 无线电