【发布时间】:2021-07-24 00:35:12
【问题描述】:
我有一个祖父组件,它显示一条消息,指出必须更新孙子组件上的字段。
一旦用户更新值并点击按钮,祖父母的 HTML 元素必须立即消失。
我的解决方案的简化模型如下:
<div [hidden]="buttonPressedOnGrandchild">
<p>You must update the field X</p>
</div>
我需要将孙子组件的 buttonPressedOnGrandchild 的值设置为 true。或者使用其他解决方案来隐藏元素。
我找到了父母>孩子和孩子>父母沟通的解决方案,但不适用于祖孙沟通。
【问题讨论】:
-
child->parent->grandparent 方法可以是一种。另一个可以使用带有 BehaviorSubject 的服务。
-
谢谢,我最终通过 EventEmitter 与孩子>父母>祖父母沟通,但对于更复杂的组件关系结构,接受的答案应该是最佳解决方案。
标签: html angular angular-components