在2个插件脚本之间传递消息
Passing message between 2 addon scripts
我正在抽象代码,以专注于核心问题。我有一个main.js
文件,它需要第二个文件optionsmod.js
。
我希望能够从optionsmod.js
向main.js
发送消息,这样main.js
就可以继续做其他事情。我不知道该怎么做。。。
下面是一个不起作用的例子。
main.js:
var optionsmod = require("optionsmod.js");
var self = require("sdk/self");
optionsmod.init();
self.port.on("message",function(){
console.log("message received");
});
optionsmod.js:
var self = require("sdk/self");
function init(){
console.log("here in init");
//FOR THIS EXAMPLE, I'VE MADE THE CALL HERE. BUT WONT BE NORMALLY
sendMessage();
}
function sendMessage(){
self.port.emit("message");
console.log("message sent");
}
exports.init = init;
我添加的代码不起作用,但有没有类似的方法?
模块之间没有默认的消息传递方式。当main.js中发生事件时,在optionsmod.js中很容易发生一些事情。只需导出函数并从main.js main.js optionsmod.js 另一种选择是导出var optionsmod = require("optionsmod.js");
var eventCallback = function(message) {
console.log('message received: '+message);
};
optionsmod.init(eventCallback);
exports.init = function(eventCallback) {
foo.on('bar', function() {
eventCallback('the message');
console.log('message sent');
});
};
foo
,然后从main.js调用foo.on
,但这可能会破坏编写单独模块的全部目的,在这种情况下,我链接到的文档会有所帮助。坦率地说,你可能可以使用这些文档来创建你自己的专有消息系统,但我认为你最好用上面的术语来思考。
- Node.js上的WebSocket,并在所有连接的客户端之间共享消息
- 如何在弹出脚本到内容脚本之间发送消息并返回
- 通过node.js和socket.io在两个用户之间发送消息
- 如何在Chrome扩展弹出窗口和内容脚本之间发送消息
- 在主干.js视图之间传递消息
- 在页面之间显示“页面加载”消息
- 发布两个网站之间的消息
- PHP 和 Jquery 之间的消息传递
- 在操作之间发送 Ajax 消息集超时 m 延迟
- 无法在TCP服务器和节点.js之间发送消息
- Chrome 扩展程序:无法让消息传递在后台脚本和内容脚本之间正常工作
- javascript/整个脚本块(在脚本标记之间)被禁用,没有错误消息
- 如何使用端口在main.js和面板之间传输消息'的内容脚本
- 在format.html和format.js之间显示Rails3 Flash消息
- 两个窗口或选项卡之间的跨文档消息传递,而不是iframe
- 在树莓派上的HTML和python之间发送消息
- Chrome扩展消息在内容和后台之间传递
- 内容脚本和背景页面之间的消息传递在chrome扩展是不工作,因为它应该是
- Firefox插件之间的消息
- FCM -下游消息和上游消息之间的差异