0
我正在構建擴展程序,並且試圖保持其結構良好。其中的一部分將使用某種類型的模板系統(小鬍子,把手等)。請注意,我已經意識到必須使用一個特定的非eval版本的圖書館。不能將xhr文件添加到Chrome擴展程序中
問題是,從app.js腳本(核心邏輯)內我不能XHR加載/模板(見下文)中的文件的內容。
load事件永遠不會觸發,當我使用onreadystatechange進行檢查時,立即跳轉到狀態4,狀態碼爲0.(狀態4和狀態200是我們想要的)。
獲取文件的Chrome網址,例如,
chrome.extension.getURL('templates/view1.html')
//chrome-extension://hdhpjlpbepobcdgnkklnakdpoojaahjg/templates/view1.html
我懷疑我的manifest.json中有些東西沒有正確配置。我已經閱讀了CSP文檔,但是沒有人會向我跳出爲什麼訪問本地擴展名的文件應該被拒絕。請注意,XHR請求不會拋出錯誤,它們只是永遠不會返回數據。
應用程序的結構是這樣的:
/manifest.json
/src
app.js
style.css
/libs
jquery.js
mustache.js
/templates
view1.html
view2.html
的manifest.json
{
"name": "Test Extension",
"version": "0.0.1",
"manifest_version": 2,
"icons": {
// "16": "",
// "48": ""
// "128": ""
},
// "default_locale": "en",
"permissions": [
"contentSettings",
"http://*/*",
"https://*/*"
],
"content_scripts": [
{
"matches": [
"https://www.google.com/search*"
],
"css": [
"src/style.css"
],
"js": [
"src/app.js",
"libs/jquery.js",
"libs/mustache.js"
],
"run_at": "document_start"
}
]
}
非常感謝。我老實說花了幾個小時來搜索,閱讀和試驗,我從來沒有看到這方面的參考。希望這對未來的人有用。 – Geuis