我正在使用 Addon SDK 为 Mozilla FireFox 开发一些扩展。 我的main.js现在非常庞大,包含大量各种各样的代码。 可以将它们分割成几个自定义 js 文件吗?
main.js - 加载器
Unit1.js - 执行工作 A
Unit2.js - 执行工作 B
Unit3.js - 执行工作 C
或者任何关于开发功能强大的扩展的好建议。
最佳答案
您可以create and require()
"local" modules 。另请阅读 Module structure of the SDK .
因此,您可能想尝试模块化您的东西。
lib/joba.js
function non_exported_helper() {
// do something;
}
function JobA() {}
JobA.prototype = {
doSomething: function() {
non_exported_helper();
return something_else;
}
};
// Export JobA
// Stuff not in `exports` will not be visible to other code
// require()ing a module.
exports.JobA = JobA;
lib/main.js
var JobA = require("./joba").JobA;
var job = new JobA();
job.doSomething();
当然,任何模块都可以使用require()
,但要注意循环导入。
将什么内容放入哪个模块取决于您。例如。一个模块可以实现单个“类”,而另一个模块可以实现一组功能,或者另一个模块可以用于后台请求,而另一个模块可以用于所有 UI 内容。
也许看看 SDK 本身,它是按模块组织的,和/或研究其他 stdlib 的功能,例如 Python stdlib 或 go stdlib 等。
关于javascript - 插件 SDK。将 main.js 分割成几个单元?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25003774/