0

私はjetpackの世界(そしてそのことについてはFirefoxの拡張機能)に不慣れで、jetpackの可能性について調査しているときに、何か奇妙なことに気づきました。pagemodにjavascriptフレームワーク(RightJS)を含む簡単なテストプロジェクトを実行しました(チュートリアルではjQueryを使用しており、正常に機能しているようです)。次のエラーが発生しました。

エラー:例外が発生しました。
トレースバック(最後の最後の呼び出し):
ファイル "/home/nic/Aptgeek/TestProjects/ff-extension/data/external/libs/right-src.js"、行5979、
ファイル "/home/nic/Aptgeek/TestProjects /ff-extension/data/external/libs/right-src.js "、行990、
TypeError:Array.includeは関数ではありません

私のmain.jsスクリプトはかなり単純です:

var pageMod = require("page-mod"); 
var self = require("self"); 
exports.main = function() { 
        pageMod.PageMod({ 
                include: "*", 
                contentScriptWhen: 'ready', 
                contentScriptFile: [self.data.url('external/libs/right-src.js'), 
                                    self.data.url('test.js')], 
                onAttach: function onAttach(worker) { 
                        worker.on('message', function(message) { 
                                console.log(message); 
                        }); 
                } 
        }); 
} 

その議論を見た後:http: //groups.google.com/group/mozilla-labs-jetpack/browse_thread/thr ...、私はjetpackjavascriptフレームワークのサポートについて疑問に思い始めました。page-modを間違って使用していますか?それともそれはうまくいくべきですか?page-modのcontent-scriptとしてjavascriptフレームワークを使用することに関して制限はありますか?

4

2 に答える 2

1

Firefoxアドオンは、ネイティブタイプがサンドボックス化されている環境で実行されます。これらのネイティブタイプがRightJSで拡張された方法は、サンドボックス化された環境と競合していました。FirefoxアドオンSDK(JetPack)で動作するように、RightJSにいくつかの変更が加えられました。

于 2011-03-29T19:34:48.230 に答える
0

rightjsの「セーフモード」機能を使用してみてください

http://rightjs.org/tutorials/safe-mode#safe

このセーフモードでは、RightJSは何も拡張せず、その関数とクラスをグローバルスコープに入れません(RightJSオブジェクト自体を除く)。

于 2011-04-24T08:25:38.307 に答える