Engaged on an web extension is an attention-grabbing experience — you get to model web whereas working with specific extension APIs. One such API is storage
— the online extension style of persistence. Let’s uncover how you’ll want to use session
and native
storage inside your Manifest V3 web extensions!
Enabling Extension Storage
The extension storage
API isn’t on the market by default. To permit the storage
API, it is good to quote it throughout the manifest.json
file of your extension:
{ // additional.... "manifest_version": 3, "determine": "__MSG_appName__", "permissions": [ "storage", // more.... ], // additional.... }
Together with storage
to the permissions
array, which is a primary stage manifest.json
key, provides session
and native
storage capabilities to your extension.
Get, Set, and Take away Storage Values
Very like standard localStorage
and sessionStorage
APIs, extension storage provides get
, set
, and take away
operations:
// set await chrome.storage.session.set({ determine: "David", shade: "inexperienced" }); // get const { determine, shade } = await chrome.storage.session.get(["name", "color"]); // take away await chrome.storage.session.take away(["name", "color"]);
Just some points to note:
get
requires an array argument, not a single price likelocalStorage
andsessionStorage
set
have to be an object formattake away
could be an array, similar toget
- It’s best to make the most of
chrome.storage.native
orchrome.storage.session
counting on how - All of the extension storage API methods are promise-based, with
await
or callback codecs
Clear All Storage
Throughout the event that you just simply want to clear all information for native or session storage, there’s a clear
methodology:
await chrome.storage.session.clear();
Using clear
is environment friendly nevertheless you’ll want to just remember to do really want to clear each factor — clear
might develop to be a maintenance concern.
Storage is a needed part of most web extensions. Whereas the API is easy, the async format and methodology names are completely totally different.
[ad_2]