如何使用端口在main.js和面板的内容脚本之间传递消息?

时间:2013-07-25 07:17:40

标签: javascript firefox messaging firefox-addon-sdk

我的firefox插件出现了问题。我在main.js中编写代码如下:

var mypanel = require("sdk/panel").Panel({
  width: 322,
  height: 427,
  contentURL: data.url("main.html"),
  include:["http://*/*","https://*/*"],
  contentScriptFile: [data.url("js/content.js")]  
});


mypanel.on('message', function(message) {
    switch(message.type) {
      case 'type1':
        console.log(message.content);
        break;
      case 'type2':
        console.log(message.content);
        break;
     }
});

content.js中的代码:

self.port.emit("message",{type:"type1",content:"content1"});

当我运行代码时,Mozilla Addon-Builder提醒我“TypeError: self.port is undefined”,那么我的代码有什么问题?或者我写的关于Firefox port消息的方式是错误的?我该怎么写代码?谢谢。

1 个答案:

答案 0 :(得分:1)