0

我試圖構建我的第一個Chrome擴展,但發現調試問題。在處理window.onerror時調試Chrome擴展

我可以console.log(),但在Developer Tools控制檯中(我正在處理background.js;沒有UI),因此沒有關於語法錯誤的報告。

這是正常的嗎?或者它取決於我爲創建擴展的頁面的一些設置? (www.google.com

我讀過也許可能有一個window.onerror設置某處,但我無法找到它。我在background.js的開頭試過 window.onerror = null;
但沒有任何變化。

你會怎麼做才能得到錯誤?

UPDATE(添加代碼)

這是manifest.json的

{ 
    "name": "Name", 
    "description": "Description", 
    "version": "0.1", 
    "manifest_version": 2, 
    "background": { 
     "persistent": false, 
     "scripts": ["js/background.js"] 
    }, 
    "permissions" : [ 
     "tabs", 
     "*://www.google.com/*", 
     "*://www.google.de/*" 
    ], 
    "commands": { 
    "changeSearch": { 
     "suggested_key": { 
      "default": "Ctrl+Shift+A", 
      "mac": "Command+Shift+A" 
     }, 
     "description": "Change." 
    } 
    } 
} 

background.js像這樣開頭:

console.log("Start"); 
chrome.commands.onCommand.addListener(function(command) { 
    consTYPOTYPOTYPOTYPOTYPOTYPOle.log("catched"); 
    ... 

我只是發現如果TYPO是otuside,則會引發錯誤function(command)代碼,如果我在第一或第二行有TYPO。 第三行完全沉默。沒有錯誤。它只是不起作用。

對我來說這很奇怪!

+0

可能的重複[在Chrome擴展中,從background.js讀取控制檯消息?](http://stackoverflow.com/questions/10257301/where-to-read-console-messages-from-background-js -chrome-extension) –

+0

@RobW我已經看到了。不是同一個問題。我可以進行調試,但有些東西會阻止解析器報告控制檯中的錯誤。 – Kamafeather

+0

這是不可能的。您確定[背景頁](https://developer.chrome.com/extensions/background_pages)中存在實際錯誤,並且您正在查看您的擴展程序的控制檯嗎? [內容腳本](https://developer.chrome.com/extensions/content_scripts)消息出現在網頁的控制檯中,[擴展彈出]中出現錯誤(https://developer.chrome.com/extensions/ browserAction#popup)出現在彈出窗口的控制檯中。 –

回答

0

問題是一個衝突的延伸,這是覆蓋我的。

試圖禁用所有擴展,然後重新啓用它們,從我的開始,解決了這個問題。

可能我讓它對衝突的擴展(已在後啓用)具有更高的優先級。