Estoy guardando los valores de entrada de un usuario de la página de bienvenida al escuchar el evento de click en un botón que tiene id ok_btn usando Chrome Storage API usando el siguiente código:
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.") }); }); Hacer lo anterior solo establece el valor contra CustomerApiKey . También quiero almacenar el valor de numberOfLetters . Estoy usando el siguiente código para get el valor del almacenamiento:
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();El siguiente es el resultado:
{CustomerApiKey: 'test_abcdefghijkl'} CustomerApiKey: "test_abcdefghijkl" [[Prototype]]: ObjectNo se puede averiguar por qué no muestra la segunda clave en el almacenamiento.