You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
44 lines
850 B
44 lines
850 B
import { defineStore } from 'pinia'
|
|
import { ref } from 'vue'
|
|
|
|
// 定义 Store
|
|
export const useLoginStore = defineStore(
|
|
'login',
|
|
() => {
|
|
// 会员信息
|
|
const loginInfo = ref("true")
|
|
|
|
// 保存会员信息,登录时使用
|
|
const setLoginInfo = (val) => {
|
|
loginInfo.value = val
|
|
}
|
|
|
|
// 清理会员信息,退出时使用
|
|
const clearLoginInfo = () => {
|
|
loginInfo.value = undefined
|
|
}
|
|
|
|
// 记得 return
|
|
return {
|
|
loginInfo,
|
|
setLoginInfo,
|
|
clearLoginInfo,
|
|
}
|
|
},
|
|
// TODO: 持久化
|
|
{
|
|
// 网页端持久化
|
|
// persist: true,
|
|
// 小程序端持久化
|
|
persist: {
|
|
storage: {
|
|
getItem(key) {
|
|
return uni.getStorageSync(key)
|
|
},
|
|
setItem(key, value) {
|
|
uni.setStorageSync(key, value)
|
|
},
|
|
},
|
|
},
|
|
},
|
|
)
|