Store Vue data to localStorage using Vuex
Learn how to store Vuex data automatically to localStorage or sessionStorage
When talking about storing data, there are various ways to persist data.
One is very simple, it’s perfect for prototypes, and it’s storing the data using the Web Storage API: localStorage and sessionStorage.
Using Vue you can make use of that API in many ways. One of the simplest ones is to rely on the vuex-persist
library.
You install it using npm or Yarn:
npm install vuex-persist
#or
yarn add vuex-persist
Open the Vuex store file, and add:
import VuexPersist from 'vuex-persist'
Initialize VuexPersist:
const vuexPersist = new VuexPersist({
key: 'my-app',
storage: window.localStorage
})
key
is the key that’s used in the localStorage database.
Change localStorage
with sessionStorage
to use that other storage system (each has its own peculiarities, see the Web Storage API document I linked above).
Next up, add vuexPersist
to the list of Vuex plugins, when initializing the store:
const store = new Vuex.Store({
//...initialization
plugins: [vuexPersist.plugin]
})
That’s it! Any time the store is changed, the library will persist it to the browser.
There are more advanced capabilities you can find out on the official documentation, but these are the basics to get you started.
→ I wrote 17 books to help you become a better developer, download them all at $0 cost by joining my newsletter
→ JOIN MY CODING BOOTCAMP, an amazing cohort course that will be a huge step up in your coding career - covering React, Next.js - next edition February 2025