如何将ngModel从子级传递到父级(子级到父级到父级)?

时间:2020-02-11 14:00:12

标签: angular typescript forms

我有一些使用模板驱动形式的父组件:

user-data.components.ts
admin-data.components.ts
customer-data.components.ts

这些组件中的表单元素是使用NG_VALUE_ACCESSOR的子组件:

app-input.component.ts

将其绑定到每个父母中,例如:

<app-input name="xxxx" [(ngModel)]="yyyy" ....></app-input>

另一方面,我在每个父组件中都有一些默认字段,例如名字姓氏

因此,对于默认字段,我想创建一个额外的组件: default-fields.component.ts firstName {{1} }

lastName

<app-input name="firstName" [(ngModel)]="yyyy" ....></app-input>

在父母中添加一次。

我的问题是我可以将<app-input name="lastName" [(ngModel)]="yyyy" ....></app-input> ngModel 传递到 app-input.component.ts ,但不能更深一层。例如default-fields.component.ts

user-data.components.ts中,我使用 default-fields.component.ts ,例如:

viewProviders: []

我的概念完全错误吗?我只是以错误的方式实现了吗?

1 个答案:

答案 0 :(得分:0)

最简单的方法是使用BehaviorSubject创建服务,并通过next()传递数据。然后,您只需要订阅