2012-05-20 56 views
1

我想在我的擴展中使用ericvold的工具欄按鈕模塊。當我使用附加組件在線嘗試它時,它工作正常。但是當我在我的電腦上使用附加SDK時,它似乎有一些問題,似乎沒有任何地方可以添加任何東西。在firefoxaddonsdk中使用第三方apis

,我遵循的步驟是:

  • 下載工具欄從github拉鍊。

  • 解壓縮並將其添加到我的軟件包中的附加SDK中,並運行cfx docs

  • index.html(第三方apis)中列出的文檔複製到main.js中。

  • 在我的packages.json中添加依賴關係(還下載並添加了vold utils)。

它仍然不會顯示我一個工具欄。

我的代碼是這樣的:

exports.main = function(options) { 
    // create toolbarbutton 
    var tbb = require("toolbarbutton").ToolbarButton({ 
    id: "TBB-TEST", 
    label: "TBB TEST", 
    onCommand: function() { 
     tbb.destroy(); 
    } 
    }); 

    if (options.loadReason == "install") { 
    tbb.moveTo({ 
     toolbarID: "nav-bar", 
     forceMove: false // only move from palette 
    }); 
    } 
}; 
+0

所以,在哪個目錄,你有你'main.js'何爲'toolbarbutton.js'? –

+0

main.js位於lib目錄中,toolbarbutton.js位於packages目錄中 - D:\ addon-sdk-1.6.1 \ packages \ erikvold-toolbarbutton-jplib-46e51ab \ lib \ toolbarbutton.js – user1092042

+0

是否有錯誤? – erikvold

回答

2

這裏是一個GitHub庫,你可以看看:

https://github.com/canuckistani/toolbar-template

這是基本的附加有指向埃裏克·沃爾德的商工具欄git的子模塊和utils庫,並實現了一個非常簡單的工具欄按鈕。

const data = require("self").data; 
const tabs = require("tabs"); 

exports.main = function(options) { 

    var btn = require("toolbarbutton").ToolbarButton({ 
     id: 'my-toolbar-button', 
     label: 'Add skull!', 
     image: data.url('favicon.png'), 
     onCommand: function() { 
      if (typeof(tabs.activeTab._worker) == 'undefined') { 
       let worker = tabs.activeTab.attach({ 
        contentScript: 'self.port.on("sayhello", function() { alert("Hello world!"); })' 
       }); 
       tabs.activeTab._worker = worker; 
      } 
      tabs.activeTab._worker.port.emit("sayhello"); 
     } 
    }); 

    if (options.loadReason === "install") { 
     btn.moveTo({ 
      toolbarID: "nav-bar", 
      forceMove: false // only move from palette 
     }); 
    } 
}; 

要看看它是如何工作的,簡單安裝的XPI文件:

https://github.com/canuckistani/toolbar-template/raw/master/toolbar.xpi

注:本例中使用SDK工作verison 1.7,它西港島線可能不是qwith SDK的主分支工作,由於出口的變化.main()。

1

變化D:\addon-sdk-1.6.1\packages\erikvold-toolbarbutton-jplib-46e51ab\lib\toolbarbutton.jsD:\addon-sdk-1.6.1\packages\toolbarbutton\lib\toolbarbutton.js

+0

'vold-utils'軟件包也是一樣 – erikvold

+0

這沒有用。但是你的menuitem模塊似乎工作正常。我可以看到工具中的點擊我。 – user1092042

+0

好的。我猜這是我的不好。我不得不去firefox選項卡,工具欄佈局,然後選擇工具欄。我如何使它自動出現。 – user1092042