DDD(领域驱动设计)思想解读及优秀实践|完结无密
↓↓↓↓↓↓↓下载看水印↓↓↓↓↓↓↓
js复制代码<script src=“module1.js”></script> <script src=“module2.js”></script>
讯享网
弊端:模块与模块之间没有依赖关系,维护困难,无私有空间。项目变大时,上述问题更明显。
解决:命名空间
每个模块暴露全局对象,模块的内容挂载到对象中。
讯享网js复制代码window.moduleA = { method1: function() { console.log(‘moduleA#method1’) } }

js复制代码// module-a.js (function (\() { var name = 'module-a' function method1 () { console.log(name + '#method1') \)(‘body’).animate({ margin: ‘200px’ }) } window.moduleA = { method1: method1 } })(jQuery)
主要用于服务器端开发(如 Node.js)。CommonJS规范通过 module.exports 导出模块,通过 require 函数加载模块。CommonJS 模块是同步加载的,它是为了解决 JavaScript 的作用域问题而定义的模块形式,可以使每个模块它自身的命名空间中执行。
CommonJS模块规范主要分为引用、定义、标识模块三部分:
讯享网js复制代码module.exports = function( value ){ return value * 2; } / * 模块引用 * * 使用require()方法来引入一个模块; * 这里引入 模块:moduleA,并复制给变量multiplyBy2; / var multiplyBy2 = require(‘https://www.bilibili.com/read/moduleA'); var result = multiplyBy2(4); / * 模块标识 * * 指传给require()的参数 可以是小驼峰命名的模块名或是路径 * * require(“模块名”):当前目录下的node_modules目录中的模块 * require(“路径”):指定目录的指定模块 / / * 模块定义 * * module对象:module对象指的模块自身 * export属性:module对象的属性,为外部提供接口 / module.exports = function( value ){ return value * 2; }
特点:
注意:浏览器不兼容CommonJS的根本原因,在于缺少四个Node.js环境的变量。。所以只要能够提供这四个变量,浏览器就能加载 CommonJS 模块。
js复制代码

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/189161.html