Engaged on an online extension is an attention-grabbing expertise — you get to style net whereas working with particular extension APIs. One such API is storage — the net extension taste of persistence. Let’s discover how you need to use session and native storage inside your Manifest V3 net extensions!
Enabling Extension Storage
The extension storage API is not obtainable by default. To allow the storage API, you want to cite it within the manifest.json file of your extension:
{
// extra....
"manifest_version": 3,
"title": "__MSG_appName__",
"permissions": [
"storage",
// more....
],
// extra....
}
Including storage to the permissions array, which is a high stage manifest.json key, gives session and native storage capabilities to your extension.
Get, Set, and Take away Storage Values
Very similar to conventional localStorage and sessionStorage APIs, extension storage gives get, set, and take away operations:
// set
await chrome.storage.session.set({ title: "David", colour: "inexperienced" });
// get
const { title, colour } = await chrome.storage.session.get(["name", "color"]);
// take away
await chrome.storage.session.take away(["name", "color"]);
A couple of issues to notice:
getrequires an array argument, not a single worth likelocalStorageandsessionStoragesetmust be an object formattake awaycan also be an array, very likeget- You should use
chrome.storage.nativeorchrome.storage.sessionrelying on how - The entire extension storage API strategies are promise-based, with
awaitor callback codecs
Clear All Storage
Within the occasion that you simply wish to clear all information for native or session storage, there is a clear methodology:
await chrome.storage.session.clear();
Utilizing clear is efficient however you may wish to make sure that you do actually wish to clear every little thing — clear may grow to be a upkeep concern.
Storage is a necessary a part of most net extensions. Whereas the API is easy, the async format and methodology names are completely different.

