在不使用Service的情况下如何防止在Angular6中单击时重新加载组件?

时间:2018-12-17 10:20:27

标签: angular typescript angular-ui-router

让我们考虑2个角分量 componentA componentB ,我有一个在 componentA 中输入了一些值的表格,并带有一个按钮以导航到 componentB ,导航到 componentB 后,我有一个后退按钮可以返回到 componentA ,现在单击后退按钮后,它导航到 componentA ,但是重新加载了值(刷新了整个组件)后,如何防止在单击后重新加载组件,请帮帮我。

我正在使用routerLink='./componentA'进行路由

2 个答案:

答案 0 :(得分:1)

您必须临时存储表单的控件值。您可以创建服务并将该表单的所有数据保留在该服务属性中。

如果您需要刷新页面后的数据,则将其存储在浏览器中,例如在本地存储,会话存储或cookie中(取决于您的要求)。

然后通过这些存储的值预填充ComponentA表单。

答案 1 :(得分:1)

尝试使用Locatoin服务。从import {Location} from '@angular/common';导入 然后将其注入 componentB

constructor(private _location: Location) 
  {}

  onClickBack() {
    this._location.back();
  }