我即将开始构建一个包含多个模块的 JS 库。假设库名为 Library,两个模块分别称为 One 和 Two。我希望最终用户能够以两种不同的方式调用库:
Library.One.somefunction(params)
或
somefunction(params)
基本上,我想让最终用户选择是否包含命名空间。有没有好的方法来做到这一点?另外,如果我还想提供一个缩小版的库,有没有好的方法来做到这一点?这个库是我最终可以在 Node.js 中使用的东西;现在,我打算自己使用它,但我想以这样一种方式设计它,以便将来转变为可共享的项目不会太难。
如果您能指出我的任何引用资料,那就太好了,谢谢!
最佳答案
如果您使用的是 Node.js,您可以利用 CommonJS 模块系统。
math.js(您的库)
exports.add = function() {
for (var i = arguments.length; i--;) {
sum += arguments[i];
}
return sum;
};
program.js(有人在用它……)
var MyMath = require('math');
console.log(MyMath.add(1, 2)); // 3
// ... in different ways
var add = require('math').add;
console.log(add(1, 2)); // 3
关于node.js - 命名一个 javascript 库,作为可选,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4776777/