我有一些使用模板驱动形式的父组件:
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: []
我的概念完全错误吗?我只是以错误的方式实现了吗?
答案 0 :(得分:0)
最简单的方法是使用BehaviorSubject创建服务,并通过next()传递数据。然后,您只需要订阅