2013-07-16 52 views
1

我剛開始進入Mozilla Firefox擴展,並且我確信我會犯很多錯誤,但是我無法從擴展的javascript中找到錯誤和日誌。Firefox擴展js錯誤日誌,在哪裏?

我main.js:

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

pageMod.PageMod({ 
    include: "https://www.google.ee/*", 
    contentScriptFile: self.data.url("popup.js") 
}); 

其中popup.js我試圖Application.console.log( 「消息」); Firebug.Console.log( 「消息」);的console.log( 「消息」); Components.utils.reportError(E);隨機刪除一些分號,並嘗試調用不存在的對象屬性(document.body.asdasdasd =「asd」;等)
[popup.js也插入消息到頁面主體,所以我可以確認代碼被執行]

我檢查了Ctrl + Shift + k; CTRL + SHIFT + J; Firebug的控制檯,它們全部是空的或僅顯示來自網頁的錯誤。在我的about:config extensions.logging.enabled = true和javascript.options.showInConsole = true。

我可能會丟失什麼或擴展JavaScript日誌在哪裏出現?

回答

3

確保你沒有你的日誌記錄級別關閉:

extensions.sdk.console.logLevel 

Logging Levels

+0

謝謝,這是我失蹤了,甚至沒有extensions.sdk.console.logLevel,添加它手動 – wafflemoon

0

您必須啓用插件記錄,並確保你讀了Browser Console而不是Web控制檯日誌(看到我的回答here)。

4

有幾個方面,這可以設置

  1. 定義JPM preferences

創建firefox-prefs.json你定義的偏好。

{ 
    "extensions.sdk.console.logLevel": "all" 
} 

然後並附在命令行調用

jpm --prefs=./firefox-prefs.json test 
  • 定義在代碼
  • 使用preferences service偏好包括在以下index.js的頂部,lib/main.jstest/helper.js

    require("sdk/preferences/service").set('extensions.sdk.console.logLevel', 'all'); 
    
    1. 在瀏覽器中手動配置首選項about:config

      1. 訪問about:config
      2. 右鍵單擊>新建>字符串
      3. 進入首選項名稱「extensions.sdk.console。LOGLEVEL」,值爲 '所有'

    enter image description here

    來源: