我正在使用以下代码在使用 chrome Storage API 的click
具有 id 的按钮上侦听事件时从欢迎页面保存用户输入值:ok_btn
let submit = document.getElementById("ok_btn");
submit.addEventListener("click", async () => {
let apiKey = document.getElementById("APIkey").value;
let letters = document.getElementById("numberOfLetters").value;
// console.log(apiKey);
await chrome.storage.sync.set({ 'CustomerApiKey': apiKey }, function () {
alert("APikey is set.")
});
await chrome.storage.sync.set({ 'numberOfLetters': letters }, function () {
alert("Letters value is set.")
});
});
执行上述操作只会将值设置为CustomerApiKey
. 我也想存储它的值numberOfLetters
。我正在使用以下代码来get
存储存储中的值:
const getCustomerApiKey = async () => {
return new Promise((resolve, reject) => {
// Asynchronously fetch all data from storage.sync.
chrome.storage.sync.get(null, (items) => {
// Pass any observed errors down the promise chain.
if (chrome.runtime.lastError) {
return reject(chrome.runtime.lastError);
}
resolve(items);
});
});
};
async function key() {
CustomerApiKey = await getCustomerApiKey();
// doLetters = await getCustomerApiKey('numberOfLetters');
console.log(CustomerApiKey);
// console.log(doLetters);
main(CustomerApiKey);
};
key();
结果如下:
{CustomerApiKey: 'test_abcdefghijkl'}
CustomerApiKey: "test_abcdefghijkl"
[[Prototype]]: Object
无法弄清楚为什么它没有显示存储中的第二个密钥。