2017-11-25 107 views
0

我正在爲我的個人使用開發一個Chrome擴展。我有一個彈出式菜單,有幾個設置可以保存(更具體的我想保存ID)。JS:Chrome存儲:不保存值

設置了權限tabsstorage

所以我使用Chrome的內置的存儲API來設置和獲取自己的價值觀: 我要保存3個不同的值:

chrome.storage.sync.set({ 'course': this.value });

chrome.storage.sync.set({ 'group': this.value, 'name': name});

coursegroup保存,但name不是。

所以我的問題是爲什麼name沒有保存,我做錯了什麼。謝謝您的幫助。

編輯1:

在我的內容腳本我得到的數據這樣的:

chrome.storage.sync.get(null, function(data) { console.log(data); });

null得到所有鑰匙。我的控制檯日誌:{course: "1424", group: "5296"}。沒有關鍵的標誌name

編輯2:

由於泰Q的建議,使用

var obj = {}; obj['group'] = this.value; obj['name'] = name; chrome.storage.sync.set(obj);

保存現在的作品!

+0

你確定它不應該是'this.name'嗎?您沒有提供所有的代碼,只要我不太熟悉Chrome擴展開發,就可以知道其他相關代碼的外觀。 –

+0

這個。不需要。我可以放在那裏,我想要的。沒關係。瓦里沒有得到保存。如果您願意,我可以添加更多信息。 – Techassi

+0

Idk。比如,你在哪裏得到值'name'?此外,這*可能會幫助你? https://stackoverflow.com/questions/17331957/chrome-storage-sync-set-not-saving-values –

回答

0

請參閱編輯2爲解決方案。

在將對象保存到存儲器之前創建對象並填充數據非常好用!

謝謝@問問