Code Monkey home page Code Monkey logo

Comments (6)

waset avatar waset commented on May 27, 2024 1

But this will not affect its normal operation. There is data in the cookie

from pinia-plugin-persistedstate.

waset avatar waset commented on May 27, 2024 1

If I rename the plugins to .client.ts, let it run on the client, there will be no such error, and everything will become normal again.

from pinia-plugin-persistedstate.

prazdevs avatar prazdevs commented on May 27, 2024 1

Ok, with the latest createPersistedState factory function introduced in v1.4.0, I managed to have everything fully functional with useCookie even on server side.

plugins/persistedstate.ts
import { createPersistedState } from 'pinia-plugin-persistedstate'

import { defineNuxtPlugin, useCookie } from '#app'

export default defineNuxtPlugin(nuxtApp => {
  nuxtApp.$pinia.use(createPersistedState({
    storage: {
      getItem: key => {
        return useCookie(key, { encode: (x: any) => x, decode: (x: any) => x })
          .value
      },
      setItem: (key, value) => {
        useCookie(key, { encode: (x: any) => x, decode: (x: any) => x }).value =
          value
      },
    },
  }))
})
stores/user.ts
import { defineStore } from 'pinia'

export const useUserStore = defineStore('user', {
  state: () => ({
    username: 'PraZ',
  }),
  persist: true
})

@waset tell me if that fixes it for you as well, and I will update the Nuxt usage docs anyways. I may work later on a createNuxtPersistedState helper anyway to make things more simple.

from pinia-plugin-persistedstate.

prazdevs avatar prazdevs commented on May 27, 2024

Mmh, indeed, I didn't get this error before.
The issue with adding .client is that the plugin won't be run during server-side rendering.
I don't have an idea on what is actually causing that tbh.

If anyone has an idea, feel free to help. 🥺

from pinia-plugin-persistedstate.

prazdevs avatar prazdevs commented on May 27, 2024

Feel free to reopen if you still encounter an issue (with 1.5.0 once released)

from pinia-plugin-persistedstate.

waset avatar waset commented on May 27, 2024

It's so cool that it can be run and bulid.
Praise the function of this factory. I'm such a lazy person. I need public configuration too much.

from pinia-plugin-persistedstate.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.