CMD规范的简单使用

index.html:
  <script src="./script/libs/sea.js"></script>
    <script>
        seajs.use("./script/main")
    </script>



main.js:
define(function(require){
    //模块引入
    //let module1=require("./modules/module1")
    let module4=require("./modules/module4")

    //module1.show()
    module4.show()
});


module1.js:
//定义没有依赖的模块
define(function (require, exports, module) {

    function show() {
        console.log("module1 show is called")
    }
    //暴露
    exports.show = show
})

module2.js:
//定义没有依赖的模块
define(function (require, exports, module) {
    //暴露
    module.exports = {
        msg: "这是module2中的数据"
    }
})

module3.js:
//定义没有依赖的模块
define(function (require, exports, module) {
    const MODULE3_MSG = "这是module3中的数据"
    //暴露
    exports.MODULE3_MSG = MODULE3_MSG
})


module4.js:

//定义有依赖的模块 module4 对 module2、module3依赖
define(function (require, exports, module) {

    //引入模块2 (同步)
    let module2 = require("./module2")

    //引入模块3 (异步)
    require.async("./module3", function (module3) {
        console.log("异步引入module3" + module3.MODULE3_MSG)
    })

    function show() {
        console.log("module4 show is called." + module2.msg)
    }

    exports.show = show

})

posted @ 2021-02-27 10:42  abcdefgab  阅读(93)  评论(0)    收藏  举报