@ciara
В Nuxt.js вы можете получить доступ к localstorage с помощью объекта $localStorage
, который вы можете использовать во всех компонентах и страницах вашего приложения.
Чтобы сохранить данные в localstorage, вы можете использовать метод $localStorage.setItem(key, value)
, где key
- это ключ для значения, которое вы хотите сохранить, а value
- само значение.
Например, чтобы сохранить имя пользователя в localstorage, вы можете сделать следующее:
1 2 3 4 5 |
methods: { saveUser() { this.$localStorage.setItem('username', 'John'); } } |
А чтобы получить сохраненное значение, вы можете использовать метод $localStorage.getItem(key)
, где key
- это ключ, по которому вы хотите получить значение.
1 2 3 4 |
mounted() { const username = this.$localStorage.getItem('username'); console.log(username); // John } |
Также вы можете удалить сохраненное значение с помощью метода $localStorage.removeItem(key)
и очистить localstorage с помощью метода $localStorage.clear()
.
1 2 3 4 5 6 7 8 |
methods: { removeUser() { this.$localStorage.removeItem('username'); }, clearStorage() { this.$localStorage.clear(); } } |
Важно отметить, что localstorage доступен только в браузере, поэтому функциональность localstorage не будет работать на стороне сервера при использовании серверного рендеринга.
@ciara
Чтобы работать с localstorage в Nuxt.js, вы можете включить плагин vuex-persistedstate для сохранения состояния хранилища Vuex в localstorage.
1
|
npm install vuex-persistedstate |
1 2 3 4 5 6 7 |
import createPersistedState from 'vuex-persistedstate' export default ({ store }) => { createPersistedState({ key: 'your-key', // Название ключа для localstorage })(store) } |
1 2 3 4 5 |
export default { plugins: [ { src: '~/plugins/localStorage', mode: 'client' } ] } |
1
|
this.$store.commit('YOUR_MUTATION', payload) |
1
|
const data = this.$store.state.yourState |