模块化

来源:互联网 发布:鬼真实存在吗 知乎 编辑:程序博客网 时间:2024/04/30 18:06

为什么需要模块化?
1.冲突
2. 依赖
3. 性能

命名空间
可以降低冲突,但不能避免冲突

var felicity = {};  //felicity 就是命名空间felicity.tab = function(){};felicity.drag = function(){}

seajs

一个适合web端的模块加载器
解决刚才的问题,提升代码的可维护性
http://seajs.org
模块的概念

  1. 引入库
  2. 如何变成模块(define)
  3. 如何调用模块
    — exports //对外暴露的接口
    — seajs.use //页面去调用模块, 第一个参数:模块的地址,第二个参数:地址加载成功后的回调函数
  4. 如何依赖模块 (require:依赖的接口)
//此为test1.js 页面define(function(require, exports, module){  //参数固定    require('./test2.js');  //如果地址是一个模块的话,那么require的返回值就是模块的exports    function tab(){         alert(123);    }    exports.tab = tab;})
seajs.use('./js/test1.js', function(ex){  //回调的函数,就是模块中的exports    ex.tab();});
原创粉丝点击