您的位置:首页 > Web前端 > JavaScript

seaJs-模块化开发框架

2016-11-28 02:02 127 查看
为什么需要模块化开发

模块化解决问题的原理

seaJs的基础语法

配置

易错点路径

1.为什么需要模块化开发?

当网站越来越复杂的时候,很容易遇到以下两个问题:


命名冲突

文件依赖

js语言本身在解决这两个问题时有局限,而使用框架协助模块化开发就是很好的解决办法

2.模块化解决问题的原理

职责单一:每个模块实现单一的职责

匿名函数注入依赖:保证模块的独立性,也使得模块之间的依赖关系变得明显

3.seaJs的基础语法

<!--1.引入sea.js框架-->
<script src='./sea.js'>

<!-2.引入的第一个js文件为入口函数-->
seajs.use('./main.js');<!--无回调函数写法-->

seajs.use('./main.js',function(info){
console.log('info是main.js返回的数据,我是回调函数');
});<!--有回调函数写法-->

<!--3.定义模块define-->
define(function(require,exports,module){

<!--4.依赖注入
require加载js文件/exports暴露对外的变量/module模块
-->

<!--4.假设请求(依赖)了具有求和功能的js文件-->
var add = require('./add.js');

<!-5.将add方法暴露给调用此模块的文件-->
module.exports.add = add;

<!--6.等价简写,类比$、jQuery-->
exports.add = add;
})


4.配置

seajs.config({

<!--根目录-->
base:'../myfolder',

<!--别名-->
alias:{
"jquery": "jquery/jquery/1.10.1/jquery.js"
}
})


5.易错点:路径

以./或../开头的是相对路径,相对于require所在模块的路径;
不以两者开头的路径,会相对于模块的基础路径解析(配置项中的base)

若未配置,根路径默认为sea.js所在的路径,若有多个版本的sea.js文件,以sea.js所在的文件夹seajs为根路径
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  seajs 模块化 框架