0
我想從我的background.js發送一個對象到contentscript.js。執行此操作的功能是這些:從後臺腳本發送對象到內容腳本
// contentscript.js
chrome.extension.sendMessage({ message: 'getdata' }, function(response) {
console.log(response.data); // Object {}
console.log(response.data.property); // ERROR (see below)
});
-
// background.js
var data = { property: 'test' };
chrome.runtime.onMessage.addListener(
function(request, sender, sendResponse) {
if (request.message === 'getdata') {
sendResponse({ data: data });
}
}
);
-
The error:
Error in event handler for (unknown): Cannot read property 'property' of undefined
Stack trace: TypeError: Cannot read property 'property' of undefined
at chrome-extension://neneohfdjobjkpbdmapenhmpmofmnmpo/scripts/contentscript.js:99:70
at messageListener (extensions::messaging:343:9)
at Function.target.(anonymous function) (extensions::SafeBuiltins:19:14)
at EventImpl.dispatchToListener (extensions::event_bindings:397:22)
at Function.target.(anonymous function) (extensions::SafeBuiltins:19:14)
at Event.$Array.forEach.publicClass.(anonymous function) [as dispatchToListener] (extensions::utils:93:26)
at EventImpl.dispatch_ (extensions::event_bindings:379:35)
at EventImpl.dispatch (extensions::event_bindings:403:17)
at Function.target.(anonymous function) (extensions::SafeBuiltins:19:14)
at Event.$Array.forEach.publicClass.(anonymous function) [as dispatch] (extensions::utils:93:26)
我希望有人能幫助我,謝謝!
嗯,這是一個很好的結果。但它並沒有解決我的問題。仍然收到相同的錯誤消息。 – DennisvB 2014-09-06 13:13:01
然後我建議您仔細檢查變量和字符串常量中的拼寫錯誤。另外,在後臺腳本上運行調試器以確保數據正在發送。 – Xan 2014-09-06 13:15:02