'Nuxt 3 - Pinia Vs useState()
Store (Pinia) Vs UseState
If I am not mistaken, useState can replace any store like Pinia? Given that useState makes ref sharable across all components I have a hard time knowing if I should use a store or a useState ref. For instance, let's say I have a currentUser (firstName, lastName, email) that I fetch from a distant API at page loading. Should I stock this information in a Pinia userStore or in a useState('currentUser')?
What are best practices on this topic?
useState() docs: https://v3.nuxtjs.org/api/composables/use-state
Pinia docs: https://pinia.vuejs.org/core-concepts/
Solution 1:[1]
This question is pretty much fully explained in the Why should I use Pinia section, I quote:
- Devtools support
- A timeline to track actions, mutations
- Stores appear in components where they are used
- Time travel and easier debugging
- Hot module replacement
- Modify your stores without reloading your page
- Keep any existing state while developing
- Plugins: extend Pinia features with plugins
- Proper TypeScript support or autocompletion for JS users
- Server Side Rendering Support
Here is a video of Evan You explaining it if you prefer.
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|---|
| Solution 1 | kissu |
