|
1
33
要在使用组件时使用双向绑定short,您需要将输出属性读入modelChange:
这样使用它:
|
|
|
2
27
另外:使用ngDoCheck发出模型更改将严重影响性能,因为每次检查周期都会发出新值,无论是否更改。这真的很常见!(试试console.log!) 因此,我想做的是这样做,以获得类似的便利,但没有副作用:
像这样使用它
您还可以在实际更改的位置发出新值。但我发现在setter方法中轻松地完成这一操作非常方便,并且当我直接在视图中绑定它时不必费心。 |
|
|
3
8
这太长了,不能作为对蒂埃里回答的评论。。。
使用
然后在FormInputComponent逻辑中:
|
|
|
4
3
我发现其他的答案有点令人困惑,所以我把一切都归结为一个我认为非常简单的答案 Stack Blitz 实例 这个例子只需要两个简单的组件,app。组件&test.com组件。真正的魔法只需要在Output修饰符的名称后面加上“Change”。只需使用确切的名称作为@Input装饰符,并在其末尾添加“Change”即可。在本例中,@Input名称为“testVal”,@Output名称为”testValChange“,这是Angular语法糖,或magic:-)。 以下是完整的应用程序组件。ts文件,
下面是完整的测试。组件文件,
干杯 |
|
|
5
0
现在有一个类似的问题,但有一个额外的层:一个组件,它包含一个传递数据对象的子组件,它还包含另一个子组件,该子组件具有一个输入字段,它将相同的数据对象传递给它。我想编辑输入字段,并将数据备份2层传递给父组件。由于某种原因无法实现。。。 我添加了一个stackblitz: https://stackblitz.com/edit/angular-8oh2fm |