【问题标题】:Firefox SDK extension - JPM error [closed]Firefox SDK 扩展 - JPM 错误 [关闭]
【发布时间】:2016-11-02 08:40:26
【问题描述】:

从昨晚开始,在尝试与内容脚本通信时,在加载脚本附加到的页面的选项卡中触发“就绪”事件后,我突然遇到了这个错误.

console.error:
JPM [error]   Message: TypeError: this.sandbox is undefined
Stack:
receive@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/commonjs/sdk/content/worker-child.js:87:7
emitOnObject@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/commonjs/sdk/event/core.js:112:9
emit@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/commonjs/sdk/event/core.js:89:38
messageReceived@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/commonjs/sdk/remote/child.js:67:37

无奈之下,我什至尝试从 mozilla 网站复制粘贴代码:

在 index.js 中:

var data = require("sdk/self").data;
var pageMod = require("sdk/page-mod");

pageMod.PageMod({
  include: "*",
  contentScriptFile: data.url("element-getter.js"),
  onAttach: function(worker) {
   worker.port.emit("myCustomEvent", "mymessage");
   worker.port.on("backEvent", function(content) {
     console.log(content);
   });
  }
});

在 element.getter.js 中:

self.port.on("myCustomEvent", function(message) {
   self.port.emit("backEvent", "newMessage");
});

在尝试使用“tabs”sdk 模块在主脚本和内容脚本之间通过 worker 进行通信时出现同样的错误。

编辑: 如果确认/否认这种行为,其他人可以请吗?

欢迎提出任何想法!

我在这里提交了错误报告:https://bugzilla.mozilla.org/show_bug.cgi?id=1314557

【问题讨论】:

  • 您使用的是哪个版本的 Firefox?你最近更新了吗?
  • @Makyen 最新的 FF 开发版。 51.0a2 (2016-11-01) - 我猜是昨晚更新的。

标签: firefox sdk firefox-addon-sdk


【解决方案1】:

Soo.. 如果您不在新文件夹中“jpm init”,并在其中复制粘贴另一个先前初始化的文件夹的内容 - 您会收到上述错误。我的错误。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多