1.安装pinia:
执行命令:yarn add pinia 或者使用npm npm install pinia
2.挂载pinia:
import { createPinia } from 'pinia'
import { createSSRApp } from "vue";
// import uviewPlus from 'uview-plus'
import uviewPlus from '@/uni_modules/uview-plus'
// import Vue from 'vue'
// import share from './utils/share.js'
import App from "./App.vue";
export function createApp() {
const app = createSSRApp(App);
const pinia = createPinia();
app.use(pinia)
return {
app
};
}
3.创建store:(state、getters 、actions)
新建user.js文件,添加代码:
import { defineStore } from 'pinia'
export const userStore = defineStore('user', { //唯一命名
state: () => ({
token: uni.getStorageSync('token') || ''
}),
getters: {
getToken: state => state.token
},
actions: {
setToken(token) {
uni.setStorageSync({
key: 'token',
data: token,
})
this.token = token
}
}
})
4.存入stoer:
import { userStore } from '@/store/user'
async function loginceshi() {
const res = await loginfrom(loginForm.value)
console.log('res',res)
const test = userStore()
test.setToken(res.data)
}
4.读取stoer:
import { userStore } from '@/store/user'
import { storeToRefs } from 'pinia'
const store = userStore();
console.log(store)
const {token} = storeToRefs(store);
<view >{{token}}</view>
成功显示:
![](https://img.haomeiwen.com/i25488229/a1b3550cc1c7da41.png)
网友评论