【发布时间】:2018-11-08 14:09:46
【问题描述】:
我认为@Input 工作的方式会直接给出一个很大的“不!”对这个问题。但是,今天我偶然发现了一些奇怪的行为,或者我一直对@Input 的看法是错误的..
我已经创建了一个stackblitz 来说明这个问题。这发生在 Angular 7.0.1 的 stackblitz 中,但在我的本地项目中,它也发生在 Angular 6.1.2 上。
stackblitz 展示了一个具有对象的简单父组件。该对象通过@Input 传递给子组件。子组件和父组件都具有更改对象的功能。它们还都在模板中显示对象的值。
我希望看到,当父级更改对象时,它会在子级中更改它。然而,我没想到,当孩子改变对象时,它也为父母改变了它。然而,stackblitz 确实显示了这种行为。我一直认为您需要通过 @Output 显式发出一个事件,以向父组件发送一个流并从子组件那里更改它。
【问题讨论】:
-
一句“不?!”也打在我脸上。
标签: angular typescript input