问题描述
我有一个小问题: 我正在使用 NgxsStoragePluginModule 来在刷新时保持我的状态。
但在我的 AuthState 中,如果登录不成功,我确实设置了 authError
。
一种情况可能是密码错误,另一种可能是我进行了多次试验。
然后,如果我刷新页面,我希望此页面上不会出现任何身份验证错误,用户甚至不会尝试登录。
我查看了文档(https://www.ngxs.io/plugins/storage),但他们只提到了如何从存储中排除一种状态,但没有说明如何排除状态的一种属性。
这是我更新此 authError 的方法:
@Action(LoginWithPasswordAction)
async loginWithPassword(ctx: StateContext<AuthStateModel>,action: LoginWithPasswordAction) {
ctx.patchState({
authError: null,});
try {
await this.angularFireAuth.signInWithEmailAndPassword(action.email,action.password);
await this.router.navigate(['/']);
} catch (exception) {
console.log('Login Setting exception to'+exception.message)
ctx.patchState({
authError: exception.message,});
}
}
我试图用 ngxsOnInit 中的空错误修补状态,但似乎不起作用。
我可以将其置于另一种状态,但由于它与“身份验证”相关,因此我认为将其放在此处是合乎逻辑的。
有人知道如何防止它被保存吗?或者至少在我重新加载时重置它?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)