@Sergo94Min
Разработчик

Как в Nuxt в vuex добавить плагин если там нет store index.js?

На данный момент nuxt почти отказался он файла index.js для директории store.
В версии 3 там просто файлы, имена которых это название модулей.
Так вот, я например хочу подключить плагин vuex-persistedstate.
Но он имеет настройка как раз через index.js в директории store.
Так как его подключить? Через nuxt.config.js ?
  • Вопрос задан
  • 1172 просмотра
Пригласить эксперта
Ответы на вопрос 1
@golentor
Может кого-то забанили на поиске. Всё написано на странице плагина npmjs.com/package vuex-persistedstate.
Но вот рецепт:
./plugins/localStorage.js

//import { Store } from "vuex";
import createPersistedState from 'vuex-persistedstate'
//это было в примере удалите если ненужно
import SecureLS from 'secure-ls'
var ls = new SecureLS({ isCompression: false })
 
export default ({store}) => {
  createPersistedState({
    storage: {
      getItem: (key) => ls.get(key),
      setItem: (key, value) => ls.set(key, value),
      removeItem: (key) => ls.remove(key),
    },	  
    key: 'yourkey',
    //paths: [...],

  })(store)
}


стандартно подключаем наш plugin
./nuxt.config.js
plugins: {
{ src: '~/plugins/localStorage.js', ssr: false },
}


Но я искал пример его использования в шаблоне. Написал ответ случайно.

Например у прекрасного плагина cookie-universal-nuxt есть пример
yarn add cookie-universal-nuxt

./pages/home.vue

<template />
<script>
computed: {
   ...mapState([
     'storage'
   ])
},
mounted () {
   const self = this
   window.onNuxtReady(() => {
     console.log(self.storage)
   })
}
</script>


и всё прекрасно работает
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы