Firefox addon: TypeError: getBrowserForTab(...) is undefined

Firefox addon: TypeError: getBrowserForTab(...) is undefined

将对象附加到 main.js 中活动选项卡的 window 时,出现以下错误:

 Message: TypeError: getBrowserForTab(...) is undefined

这是我用来附加对象的代码:

var { getTabs, getTabContentWindow } = require('sdk/tabs/utils');
tabs.on('load', function(tab) {
    var window = getTabContentWindow(tab);    
    window.myObject = {
     data: "sample"
    }
});

问题在于 tabs.on('load', function(tab) {}) 是高级 API 的一部分,而 require('sdk/tabs/utils') 中的 getTabContentWindow 适用于低级 XUL 选项卡。使用viewForsdk/view/core转换:

var { viewFor } = require("sdk/view/core");
var window = getTabContentWindow(viewFor(tab))