簡體   English   中英

如何將鍵/值對設置為 chrome.storage.sync

[英]How to set Key/Value pair to chrome.storage.sync

我正在嘗試使用 Chrome 擴展做一些簡單的事情,但是我發現的文檔對於使用 chrome 存儲的方法的結構不夠清楚。 我有以下代碼(通用)來存儲和檢索一些值:

var value = 561;
var key = "abc";
chrome.storage.sync.set({ [key] : value });

chrome.storage.sync.get(key, ({ result }) => {
  console.log("value received is: " + result); // This does not work, result = undefined
});

如果我想檢索添加到商店的key ,前面的代碼有什么問題?

使用{ result }時,您正在從傳遞的第一個參數中提取result

應該改為:

var value = 561;
var key = "abc";
chrome.storage.sync.set({[key]: value });

chrome.storage.sync.get(key, ({ abc }) => {
  console.log("value received is: " + abc); 
});

// or

chrome.storage.sync.get(key, (result) => {
  console.log("value received is: " + result.abc); 
});

TLDR; 在 JavaScript 中,添加{ result }時,您將從基礎 object 中提取該變量,在這種情況下為參數。

假設 object 為:

const results = {
  a: 1,
  b: 2,
  c: 3
}

您可以將參數簡化為:

const { a, b ,c } = results

這類似於:

const a = results.a
const b = results.b
const c = results.c

由於 function 中的第一個參數現在是{ result } ,因此預計該鍵存在於 function 的第一個參數中。 但它沒有,它應該是{abc}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM