我的应用程序使用 Firebase API 进行用户身份验证,将登录状态保存为 Vuex 状态中的布尔值。
当用户登录时,我设置 登录状态 并相应地有条件地显示登录/注销按钮。
但是当页面刷新时,vue app的状态丢失并重置为默认
这会导致问题,因为即使用户登录并刷新页面, 登录状态 也会设置回 false 并且即使用户保持登录状态,也会显示登录按钮而不是注销按钮……
我该怎么做才能防止这种行为
我应该使用 cookie 还是可以使用任何其他更好的解决方案…
-
原文由 boomboxboy 发布,翻译遵循 CC BY-SA 4.0 许可协议
这是一个已知的用例。有不同的解决方案。
例如,可以使用
vuex-persistedstate
。这是vuex
的插件,用于处理和存储页面刷新之间的状态。示例代码:
我们在这里做的很简单:
js-cookie
getState
我们尝试从Cookies
加载保存的状态setState
我们将状态保存到Cookies
文档和安装说明: https ://www.npmjs.com/package/vuex-persistedstate