angular - 使用角度成功登录后如何返回表单页面(用户输入表单数据)?
问题描述
我有表单,用户可以在其中填写数据并提交表单,它应该检查用户是否经过身份验证,如果没有,他应该被重定向到登录页面,成功登录后,他应该再次被收回到保留所有表单数据的表单页面。角度4+可以吗?任何建议或想法都会有所帮助
解决方案
是的,这是可能的。您必须将表单数据保存在服务或浏览器存储中(可以使用会话存储)。
在您的表单组件中。
public ngOninit(): void {
const formValue = this.dataService.getFormValue();
if(formValue) {
this.form.patchValue(formValue) // or you can use setValue
}
}
public onSubmit(): void {
if(this.form.invalid) {
return;
}
this.dataService.setFormValue(this.form.value);
}
为您服务
private fromValue: any;
public setFormValue(value): void {
this.formValue = value;
}
public getFormValue(): any {
return this.formValue;
}
将您的服务添加到模块。
推荐阅读
- c# - BadImageFormatException 和有效的 Win32
- python - 为什么for循环中的if语句中的“不等于”(!=)只返回一行
- javascript - 解构一个深度嵌套的对象,其父对象之一是 Javascript 中的一个数组
- ios - EZLoadingActivity 在 Swift 中给出关于 Carthage 更新的问题
- flutter - 如何将数据存储在 JSON 文件中?
- c# - 使用 Zen Barcode Rendering Framework 生成 EAN 13 条形码
- android - 为图像设置透明背景
- ms-word - 如何从其他word文档填充word文档中的字段/表单?
- ios - 将图像保存到文档目录后更新布尔变量在 Swift 中无法按预期工作
- javascript - 无法从类中调用静态方法,显示类型错误:方法不是函数 javascripts