我正在显示main.js
btn.addEventListener('click', function() {
var panel = require("sdk/panel").Panel({
width: 570,
height: 230,
contentURL: require("sdk/self").data.url("content.html")
});
panel.show();
}, true)
现在,我想展示来自another.js
function myFunction(){
setTimeout(function(){
var data = require('self').data;
var reminder_panel = require("sdk/panel").Panel({
width: 570,
height: 230,
contentURL:"http://www.google.com"
});
reminder_panel.show();
},4000);
}
但它不起作用。我是Firefox插件开发的新手。任何帮助对我来说都很棒。感谢。
答案 0 :(得分:0)
在Add-on SDK中,main.js'是默认运行的唯一脚本。如果要在加载项的lib目录中的其他脚本中运行代码,则需要使用其他脚本:
'another.js':
function myFunction(){
setTimeout(function(){
var data = require('self').data;
var reminder_panel = require("sdk/panel").Panel({
width: 570,
height: 230,
contentURL:"http://www.google.com"
});
reminder_panel.show();
},4000);
}
exports.myFunction = myFunction; // export the function
'main.js':
var another = require('another');
another.myFunction(); // the panel will show.
有关如何在Add-on SDK中使用CommonJS模块的更多背景信息,请参阅文档:
https://addons.mozilla.org/en-US/developers/docs/sdk/latest/dev-guide/guides/modules.html