Tôi đang viết tiện ích mở rộng chrome và tôi không thể lưu trữ mảng. Tôi đọc rằng tôi nên sử dụng JSON stringify/parse để đạt được điều này, nhưng tôi có một lỗi bằng cách sử dụng nó.Lưu trữ một mảng với chrome.storage.local
chrome.storage.local.get(null, function(userKeyIds){
if(userKeyIds===null){
userKeyIds = [];
}
var userKeyIdsArray = JSON.parse(userKeyIds);
// Here I have an Uncaught SyntaxError: Unexpected token o
userKeyIdsArray.push({keyPairId: keyPairId,HasBeenUploadedYet: false});
chrome.storage.local.set(JSON.stringify(userKeyIdsArray),function(){
if(chrome.runtime.lastError){
console.log("An error occured : "+chrome.runtime.lastError);
}
else{
chrome.storage.local.get(null, function(userKeyIds){
console.log(userKeyIds)});
}
});
});
Làm cách nào để lưu trữ một mảng đối tượng như {keyPairId: keyPairId, HasBeenUploadedYet: false}?
Không cần để stringify/phân tích nó. Bạn có thể lưu trữ mảng trực tiếp. – BeardFist
@BeardFist Tôi có Loại lỗi không được phép: Đối tượng #
Bạn nhận và đặt công cụ bằng cách sử dụng 'keys' và khi bạn nhận được nó, nó là một đối tượng như 'chrome.storage.local.get ('userKeyIds', hàm (stuff) {console.log (stuff.userKeyIds);});' – BeardFist