如何使用其详细信息页面上立即发生的更改来更新母版页的组件?

问题描述 投票:0回答:1

我有一个本地脚本角度应用程序。

假设您有一个页面A(称为主页面),其中包含项目列表。 B是A的细节,显示了一个特定的项目。假设有一个汽车列表,价格显示在列表页面中。然后,用户在详细信息页面上更改价格,然后返回到母版页。在我的应用程序中,发生的情况是母版页相应地进行了更新,但是以一种惰性的方式进行了更新。用户基本上会看到一个列表,该列表在返回后会发生变化。仅当用户单击“返回”后,这很可能是angular触发组件更新的方式。

是否有一种方法可以在用户单击“后退”之前强制更新母版页?更具体地说,我希望这种更新不是偷懒的,而是渴望的。

nativescript nativescript-angular
1个回答
0
投票

如果您使用的是{N} + Angular,那么通常的做法是使用子组件中的发射器向您的父母发送信号,表明子组件中发生了某些事件。

因此,在parent.html组件上,您将得到类似的内容:

<child (listener)="onEmitterReceivedFunction(objReceived)"></child>

此内容在parent.ts上:

onEmitterReceivedFunction(objReceived) {
   // Do what has to be done 
}

然后在您的child.ts上,您将得到类似的内容:

import { EventEmitter } from "@angular/core"

@Output('listener') onSomethingChanged = new EventEmitter<any>()

whenSomethingChanged() {
    onSomethingChanged.emit(this.thingThatChanged)
}

这些当然是代码段,您必须将它们放在代码的正确位置。

有关更多详细信息,请查看:https://angular.io/api/core/EventEmitter

© www.soinside.com 2019 - 2024. All rights reserved.