问题
在安装和配置完成 pinia 和 pinia persistedstate 之后,发现 localstorage 或者 cookies 中并没有保存数据
解决
必须使 ref 对象返回,才能保存数据
export const useUserStore = defineStore(
"user",
() => {
const _token = ref<string>();
// 本人喜欢用这种方式写面向对象的Getter 才会导致这个问题
const token = computed(() => _token.value);
const setToken = (token: string | undefined) => {
_token.value = token;
};
const removeToken = () => {
_token.value = undefined;
};
return {
// 必须暴露 ref 对象
_token,
token,
setToken,
removeToken,
};
},
{
// 开启 persist
persist: true,
},
);
其他
nuxt 文档中存在一点问题