5_CMD-SeaJS模块化教程

sea.js简单使用教程

  1. 下载sea.js, 并引入
  • 官网: http://seajs.org/
  • github : https://github.com/seajs/seajs
  • 将sea.js导入项目: js/libs/sea.js
  1. 创建项目结构
|-js
  |-libs
    |-sea.js
  |-modules
    |-module1.js
    |-module2.js
    |-module3.js
    |-module4.js
    |-main.js
|-index.html
  1. 定义sea.js的模块代码
  • module1.js
    define(function (require,exports,module) {
      var name = 'module1';
    
      function fun1() {
        console.log(name);
      }
    
      //暴露模块
      module.exports = fun1
    });
    
  • module2.js
    define(function (require,exports,module) {
      var name = 'module2';
    
      function fun2() {
        console.log(name);
      }
    
      //暴露模块
      module.exports = fun2
    });
    
  • module3.js
    define(function (require,exports,module) {
      var name = 'module3';
    
      function fun3() {
        console.log(name);
      }
    
      //暴露模块
      module.exports = fun3
    });
    
  • module4.js
    //module4依赖于module2,module3
    define(function (require,exports,module) {
      var name = 'module4';
    
      function fun4() {
        console.log(name);
      }
      //同步引入module2
      let module2 = require('./module2')
      module2()
      //异步引入module3
      require.async('./module3',function (m3) {
        m3();
      })
      //暴露模块
      module.exports = fun4
    });
    
  • main.js : 主(入口)模块
    define(function (require) {
      var m1 = require('./module1')
      var m4 = require('./module4')
      m1()
      m4()
    })
    
  1. index.html:
<!--
使用seajs:
  1. 引入sea.js库
  2. 如何定义导出模块 :
    define()
    exports
    module.exports
  3. 如何依赖模块:
    require()
  4. 如何使用模块:
    seajs.use()
-->
<script type="text/javascript" src="js/libs/sea.js"></script>
<script type="text/javascript">
  seajs.use('./js/modules/main')
</script>

5.思考:为什么运行后输出结果如下?

module2
module1
module4
module3
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值