如何在刷新/更改页面上保存反应形式数据?

时间:2020-09-18 09:38:26

标签: angular

哪种方法是将用户的数据插入保存为反应形式的最佳解决方案?

在我的Angular应用中,我有一个步进器,每个步骤都是一个反应式表单,当表单有效时,用户可以继续进行下一步或返回上一步并更改表单值。

当用户想要更改购物车中的物品或刷新页面时,问题就来了,因为他在表格中填写了很多信息,所以刷新或更改页面后将数据插入其中很高兴反应形式将保留在其中。

那么哪种方法是最好的呢?我应该去本地存储,cookie还是其他东西?

1 个答案:

答案 0 :(得分:1)

在这种情况下,使用LocalStorage是持久保存数据的好方法。在组件ngOnInit()中检查LocalStorage,并在表格中填写相关数据。

您可以拥有一个setLocalStorage()函数,如果保持每个单独的数据对您来说非常重要,那么它将在表单更改事件上被调用,

app.component.ts

ngOnInit() {
  this.myForm.valueChanges.subscribe( val => {
     this.setLocalStorage(val);
  });
}

setLocalStorage( newValue: any ): void {
  // Set Localstorage code here
}

否则,您可以在步进器的下一个按钮,表单提交事件或任何必需的事件上调用setLocalStorage()