相比vue2的vuex,vue3更推荐使用pinia来对数据进行共享化处理,下面是pina使用的案例,这里分成几个模块并导出使用,这样方便各个模块数据管理,如果不对,欢迎大家来指出
下载pinia 和持久化pinia-plugin-persistedstate
npm i pinia pinia-plugin-persistedstate
在main.ts导入pinia
import { createPinia } from 'pinia'
import piniaPluginPersistedstate from 'pinia-plugin-persistedstate'
const pinia = createPinia();
pinia.use(piniaPluginPersistedstate);
app.use(pinia)
新建store/user.ts
这里的state定义的都是共享数据
getters相当于计算属性
actions相当于mutation+actions组合了,这里不像vuex中分开,而且合在一块了,很方便
这里下载了pina数据持久化pinia-plugin-persistedstate 跟pina一样安装引入即可这里就不描述了,下面代码有注释说明
导出模块useUserStore
import { defineStore, acceptHMRUpdate } from 'pinia';
const useUserStore = defineStore('us