Mik*_*der 2 javascript firefox firefox-addon firefox-addon-sdk
这是我正在做的简化代码示例.
foo.js(在lib目录中):
exports.foo = function foo() {
this.bar = function() {
console.log("foobar!");
};
};
Run Code Online (Sandbox Code Playgroud)
main.js:
var foo = require("foo");
exports.main = function(options, callbacks) {
foo.bar();
}
Run Code Online (Sandbox Code Playgroud)
CMD:
>cfx run
[...]
error: An exception occurred.
[...]
TypeError: foo.bar is not a function
Run Code Online (Sandbox Code Playgroud)
所以基本上,我似乎无法对我导入的模块做任何事情.我在这里做错了吗?我尝试用几种不同的方式格式化foo()函数,但它们似乎都没有做任何事情.
谢谢!
require()函数的结果本质exports上是模块的变量 - 而您没有定义exports.bar.因此,无论是在您的电话foo.foo.bar()中,main.js还是以稍微不同的方式导入模块:
var {foo} = require("foo");
Run Code Online (Sandbox Code Playgroud)
这与:
var foo = require("foo").foo;
Run Code Online (Sandbox Code Playgroud)
另外,正如erikvold在他的回答中指出的那样,你并没有真正定义exports.foo.bar.
| 归档时间: |
|
| 查看次数: |
1767 次 |
| 最近记录: |