某些消息值始终未定义
Certain message values always undefined
发送内容脚本消息:
$(document).ready(function() {
chrome.runtime.sendMessage({
action: 'Action',
actType: 'Type',
value: 1
});
...
在下面的函数中,我可以获得request.action和request.value的值,但request.actType总是返回undefined。如何获取actType的值?
//Background script
chrome.runtime.onMessage.addListener(
function(request, sender, sendResponse) {
...
} else if (request.action == 'GainXP') {
chrome.storage.sync.get('X', function(result) {
addType(String(request.actType));
var x = parseInt(result.X);
x += parseInt(request.value);
chrome.storage.sync.set({'X': x}, function() {
chrome.runtime.sendMessage({
action: 'CheckX'
});
});
});
}
...
function addType(x) {
if (typeof x === undefined) {
return;
} else {
if (x == "Type1") {
chrome.storage.sync.get('type1count', function(result) {
var newtypes = parseInt(result.type1count) + 1;
chrome.storage.sync.set({'type1count': newtypes}, function() {});
return;
});
}
编辑:添加了更多相关代码,以帮助理解问题的上下文。此外,如果在addType调用之前和addType调用之后插入警报,则只执行第一个警报。
我发现了这个问题。我的清单引用了一个旧的缩小内容脚本,该脚本没有正确设置actType消息值。之后,我不得不重新排序我的存储回调,所有相关数据都在用chrome.storage.sync.
相关文章:
- 我收到错误消息:“无法读取未定义的属性'推送'”
- 如何避免收到一条消息,指出对象未定义
- 使用参数成功调用简单函数后出现意外警报,消息为“未定义”
- 使用 XML - 消息未定义
- 未定义的 AJAX Laravel 5.2 消息
- 在 MQTT 客户端中“未捕获的引用错误:未定义消息传递”
- WebChromeClient onJsAlert接收未定义的消息
- 如何解决“引用错误:未定义期望”错误消息
- 控制台中的 GeoJson “格式不正确”消息,并且显示为未定义
- Cordova sendJavascript 不适用于 android 进程消息失败:错误:未定义:10
- 我在node.js中收到一条消息,对象套接字未定义
- 从父对象内部的相邻对象打印对象会导致'未定义'消息
- 某些消息值始终未定义
- "无法读取属性'消息'未定义的“;在WebSQL错误回调中
- Javascript错误:消息,堆栈未定义,代码7
- 通过htmljquery验证的自定义消息未显示
- “GAPI未定义”;消息
- 错误,未定义消息
- Ionic Push Android推送通知返回“未定义”;消息
- 为什么我得到了“未定义”消息