pinia-persistedstate 적용시키기(새로고침시 State 초기화)
2024. 1. 8. 15:30ㆍ뷰(Vue)
반응형
Vue에서 Pinia를 사용하여 정보를 관리하는 경우에 새로고침을 하는 경우 저장된 데이터가 날아간다.
새로고침시 store값 날아가는경우 pinia-persistedstate를 사용하여 초기화 방지가 가능하다.
localStore에 저장 or 쿠키에 저장 선택가능하다
검색키워드
pinia-persistedstate store setup
pinia-persistedstate with composition api 등등
참고중인 페이지
Composition API on pinia-plugin-persistedstate?
공식사이트
Getting Started | pinia-plugin-persistedstate
설치
npm i pinia-plugin-persistedstate
기본main.js 세팅
import { createPinia } from 'pinia'
import piniaPluginPersistedstate from 'pinia-plugin-persistedstate'
const pinia = createPinia()
pinia.use(piniaPluginPersistedstate)
스토어 별로 생성하면서 거기에 특정 state만 관리한다거나 하는 형태로도 선택 할 수 있다.
또한 글로벌(전역) 하게 세팅하여 사용 할 수도 있다..!
로컬 스토리지를 사용하면서 모든 store에 적용시키려고 한다면 다음과 같이 가능하다.
만약 특정 스토어만 제외시키고 싶다면 그 스토에 옵션값으로 끄면된다.
import { createPersistedState } from 'pinia-plugin-persistedstate'
const pinia = createPinia()
pinia.use(createPersistedState({
storage: localStorage,
auto: true,
}))
반대로 특정 스토어만 적용하고자 하는경우
import { defineStore } from 'pinia'
export const useStore = defineStore(
'main',
() => {
const someState = ref('hello pinia')
return { someState }
},
{
persist: true,
},
)
반응형
'뷰(Vue)' 카테고리의 다른 글
Vue에 캘린더 달력(Vue Date Picker) 공통 컴퍼넌트화 해서 적용하기. (1) | 2024.01.11 |
---|---|
Vue3에서 Toast Alert창 적용하기. (1) | 2024.01.08 |
Vue-cli to Vite 변경을 시도했다....(Vue3) (0) | 2024.01.05 |
Vue에서 Pinia Store를 사용해보자. (1) | 2024.01.05 |
Vue 상태관리 (Vuex vs Pinia) (0) | 2024.01.05 |