1
我无法使用我的Chrome扩展程序正确保存数据。Chrome扩展程序 - 不保存数据
这里是我当前的代码
function getQueryVariable(variable) {
//Split URL by variables
var query = window.location.search.substring(1);
var vars = query.split("&");
for (var i=0;i<vars.length;i++) {
\t \t var pair = vars[i].split("=");
if(pair[0] == variable){return pair[1];}
}
return(false);
}
function saveTicket2(ticket, contents) {
//Save the data to local storage
\t chrome.storage.local.set({ticket : contents}, function() {
\t console.log('Saved', ticket, contents);
\t });
}
function setData(ticketID, result) {
//If data exists. Set it.
\t document.getElementsByName('message')[0].value = result[ticketID];
\t document.getElementsByName('message')[1].value = result[ticketID];
\t console.log(result);
}
//Grab Ticket ID \t
var ticketID = getQueryVariable("id");
//Retrieve data if it exists
try {
\t chrome.storage.local.get(ticketID, function(result) {
\t if (result) {
\t setData(ticketID, result);
\t }
\t });
} catch(err) {
\t console.log(err.message);
}
//Save ticket contents to local storage every 5 seconds
window.setInterval(function() {
\t var contents= document.getElementsByName('message')[0].value;
\t var contents= document.getElementsByName('message')[1].value;
\t saveTicket2(ticketID, contents);
}, 5000);
在saveTicket2日志工作正常
Saved 222222 text
内使用setData日志记录一个空对象
因此Chrome .storage.local.s et似乎没有错误地通过,但它实际上并没有保存任何东西。
从Chrome Storage Developer Page给出的示例如下
chrome.storage.sync.set({'value': theValue}, function() {
// Notify that we saved.
message('Settings saved');
});
这是我有。存储权限也在我的清单中。
如果我将以下内容添加到saveTicket2,在.set之后,它也返回一个空对象,确认我要么访问它,要么保存它错误。
\t chrome.storage.local.get(ticket, function(result1) {
\t console.log(result1);
\t });
有谁知道这是为什么不节约?
顺便说一句,代码片段对Chrome扩展没有意义,因为代码片段无法在浏览器中运行。 – Teepeemm