Sea.js的资料整理

一、Sea.js和Grunt构建工具

  好处:

  sea.js按需加载,用到哪些模块会加载哪些模块,节省http请求

  Grunt构建工具:可以对文件进行压缩和合并

二、API 快速参考

一、seajs.config

用来对 Sea.js 进行配置。

 1 seajs.config({
 2
 3     // 设置路径,方便跨目录调用
 4     paths: {
 5         ‘arale‘: ‘https://a.alipayobjects.com/arale‘,
 6         ‘jquery‘: ‘https://a.alipayobjects.com/jquery‘
 7     },
 8
 9     // 设置别名,方便调用
10     alias: {
11         ‘class‘: ‘arale/class/1.0.0/class‘,
12         ‘jquery‘: ‘jquery/jquery/1.10.1/jquery‘
13     }
14
15 });

二、seajs.use

用来在页面中加载一个或多个模块。

 1 // 加载一个模块
 2 seajs.use(‘./a‘);
 3
 4 // 加载一个模块,在加载完成时,执行回调
 5 seajs.use(‘./a‘, function(a) {
 6     a.doSomething();
 7 });
 8
 9 // 加载多个模块,在加载完成时,执行回调
10 seajs.use([‘./a‘, ‘./b‘], function(a, b) {
11     a.doSomething();
12     b.doSomething();
13 });

三、define

用来定义模块。Sea.js 推崇一个模块一个文件,遵循统一的写法:

1 define(function(require, exports, module) {
2
3     // 模块代码
4
5 });

require, exportsmodule 三个参数可酌情省略,具体用法如下。

四、require

require 用来获取指定模块的接口。

1 define(function(require) {
2
3     // 获取模块 a 的接口
4     var a = require(‘./a‘);
5
6     // 调用模块 a 的方法
7     a.doSomething();
8 });

注意,require 只接受字符串直接量作为参数

五、require.async

用来在模块内部异步加载一个或多个模块。

 1 define(function(require) {
 2
 3     // 异步加载一个模块,在加载完成时,执行回调
 4     require.async(‘./b‘, function(b) {
 5         b.doSomething();
 6     });
 7
 8     // 异步加载多个模块,在加载完成时,执行回调
 9     require.async([‘./c‘, ‘./d‘], function(c, d) {
10         c.doSomething();
11         d.doSomething();
12     });
13
14 });

六、exports

用来在模块内部对外提供接口。

1 define(function(require, exports) {
2
3     // 对外提供 foo 属性
4     exports.foo = ‘bar‘;
5
6     // 对外提供 doSomething 方法
7     exports.doSomething = function() {};
8
9 });

七、module.exports

exports 类似,用来在模块内部对外提供接口。

1 define(function(require, exports, module) {
2
3   // 对外提供接口
4   module.exports = {
5     name: ‘a‘,
6     doSomething: function() {};
7   };
8
9 });

module.exportsexports 的区别



以上 7 个接口是最常用的,要牢记于心。

Sea.js的资料整理

时间: 2024-08-06 06:54:17

Sea.js的资料整理的相关文章

Node.js学习资料整理

必须谨记!Node.js安全开发技巧 http://www.csdn.net/article/2014-11-25/2822803-NODE?reload=1

不错的Nodejs或者JS资料整理

资料整理 Node.js官网 - 可以下载到Node.js以及查看官方文档 Node.js教程 - 菜鸟教程网 Javascript模块化编程(一):模块的写法 - 阮一峰老师的日志,很值得看 CommonJS官网 requireJS官网 - AMD规范在其中 seaJS官网 - CMD规范在其中 request模块 cheerio模块

JS搞基指南----延迟对象入门提高资料整理

原文:JS搞基指南----延迟对象入门提高资料整理 JavaScript的Deferred是比较高大上的东西,  主要的应用还是主ajax的应用,  因为JS和nodeJS这几年的普及,  前端的代码越来越多,  各种回调套回调再套回调实在太让人崩溃, 所以就从后端拖了一个延迟对象这货, 用来解决回调地狱这个问题 .  我们使用ajax的时候多数都是为ajax添加回调 ,然后异步向服务器发送请求, 比如如下原生的XHR代码: <!DOCTYPE html PUBLIC "-//W3C//D

VueConf 全球首届Vue.js开发者大会资料整理

最近一直关注VueConf全球首届Vue.js开发者大会,现在将此次开发者大会资料整理如下: 一.Vue 2017 现状与展望   [尤雨溪] 在线视频: PPT整理: Vue 2017 现状与展望 二.Vue SSR和API Proxy层深度实践   [桑世龙] 在线视频: PPT整理:Vue SSR和API Proxy层深度实践 三.用比较性思维谈工程化在Vue.js的优雅设计   [张耀春] 在线视频: PPT整理:用比较性思维谈工程化在Vue.js的优雅设计 四.掘金 Vue.js 2.

【开源专访】Sea.js创始人玉伯的前端开发之路

摘要:玉伯,淘宝前端类库 KISSY.前端模块化开发框架SeaJS.前端基础类库Arale的创始人.本期[开源专访]我们邀请玉伯来为我们分享一些关于前端框架.前端开发的那些事,以及前端大牛是如何炼成的. 在Web应用程序的用户体验越来越被重视的今天,前端开发的地位也上升到了前所未有的高度,而随之而来的也有更多的挑战. 为了将前端开发者繁重的工作变得简单,框架应运而生.国内也不乏一些非常优秀的前端开发框架.本期[开源专访]我们邀请到了国内前端大牛玉伯(@玉伯也叫射雕),请他为我们分享一些关于前端框

JS正则表达式大全(整理详细且实用)

JS正则表达式大全(整理详细且实用).需要的朋友可以过来参考下,希望对大家有所帮助!! 正则表达式中的特殊字符 字符 含意 \ 做为转意,即通常在"\"后面的字符不按原来意义解释,如/b/匹配字符"b",当b前面加了反斜杆后/\b/,转意为匹配一个单词的边界. -或- 对正则表达式功能字符的还原,如"*"匹配它前面元字符0次或多次,/a*/将匹配a,aa,aaa,加了"\"后,/a\*/将只匹配"a*".

zz 圣诞丨太阁所有的免费算法视频资料整理

首发于 太阁实验室 关注专栏 写文章 圣诞丨太阁所有的免费算法视频资料整理 Ray Cao· 12 小时前 感谢大家一年以来对太阁实验室的支持,我们特地整理了在过去一年中我们所有的原创算法类视频,均为免费观看,方便大家学习. 先放一个ACM大神讲解的算法题视频(国外传优酷真的是太不容易了……). ACM大神精讲北美最新面试题—在线播放—优酷网,视频高清在线观看http://v.youku.com/v_show/id_XMTg2ODk0MzIwMA==.html 其余视频: [公开课]ACM大神精

HTML5资料整理 [From luics]

来自http://www.cnblogs.com/luics/,新浪微博@徐凯-鬼道 HTML5资料整理 项目组要做html5这块,花了一周左右时间收集的,快有一年时间了,部分内容需要更新,仅供参考.如需更新请回复 几点说明: 本次收集的信息以HTML5为主,这里的HTML5 ~= HTML5 + Javascript + CSS3 以下资料的协议相关部分主要来自W3C.WHATWG:demo库和开发工具等主要来自IT企业.技术组织的官网或其信息站点 W3C正式发布的协议称为Recommenda

谈谈刚接触sea.js框架得看法

向大神致敬,也是我接触框架得开始. 感谢张鑫旭大神同学得整理,专业!致敬~   sea.js的7个API,都在下面得链接中有详细说明: http://www.zhangxinxu.com/sp/seajs/docs/zh-cn/bootstrapping.html seajs.use   通过 use 方法,可以在页面中加载任意模块 seajs.config  可以使用 config 方法来配置加载器 define  使用全局函数 define 来定义模块 require    函数用来访问其他