【Javascript】【模块化】通过seaJs实现模块化

seaJs是CMD前端模块化规范的实现,seaJs使用define和use关键字实现模块化,用法如下

main.html


<html>
    <head>
        <meta charset="UTF-8"/>
        <title>Webstorm</title>
    </head>

    <script src="sea.js"></script>
    <script src="main.js"></script>
</html>

main.js


//声明模块
seajs.config({
    alias: {
        "jquery": "jquery-sea.js",
        "module": "module.js"
    }
});

//引用模块
seajs.use(["module", "jquery"], function (module, $) {
    alert(module.message);
    module.showMessage();
});

module.js


//定义模块
define(function (require, exports, module) {
    //依赖模块
    let $ = require("jquery");
    //导出内容
    module.exports = {
        showMessage: function () {
            alert($);
        }
    };
    //exports变量是module.exports的引用
    //如果module.exports不被重新赋值,他们就是同一个对象
    //如果module.exports被重新赋值,则断开关联
    //最终作为模块对象返回的是module.exports
    module.exports.message = "hello";
});


我们也可以通过seajs.use()来加载执行一个js文件


seajs.use("test.js");

猜你喜欢

转载自blog.csdn.net/u013718730/article/details/90701119