Почему дает ошибку, что не так?
Ошибка: browser-polyfill.js:817 Uncaught (in promise) Error: Expected at most 1 argument for set(), got 2
Мой сервис для работы с storage chrome:
import { storage, runtime } from "webextension-polyfill";
export const chromeStorage = {
handleChromeStorage: (storedArea = 'local', method, ...args) => {
return new Promise((resolve, reject) => {
try {
storage[storedArea][method](...args, (res) => {
if (runtime.lastError) {
return reject[runtime.lastError];
}
resolve(res);
})
} catch (error) {
reject(error);
}
})
},
setItem: (key, value, storedArea = 'local') => {
return chromeStorage.handleChromeStorage(storedArea, 'set', { [key]: value })
},
getItem: (key, storedArea = 'local') => {
return chromeStorage.handleChromeStorage(storedArea, 'get', [key]).then(res => res?.[key]);
},
removeItem: (key, storedArea = 'local') => {
return chromeStorage.handleChromeStorage(storedArea, 'remove', [key]);
},
clear: (storedArea = 'local') => {
return chromeStorage.handleChromeStorage(storedArea, 'clear');
}
}
Пример работы:
import { chromeStorage } from '../../services/storage';
chromeStorage.setItem('settings', {test: 123})
console.log(chromeStorage.getItem('settings'))