我想使用内容投影将某些属性从父组件传递到子组件,这可能吗?
例如这是我的模板:
<my-form [display]="'horiz'">
Email: <my-input [type]="'email'" ...></my-input>
Name: <my-input [type]="'name'" [display]="'vert'" ...></my-input>
...
</my-form>
现在my-form
组件具有如下模板:
<form ...>
<ng-content></ng-content>
</form>
我想要的是display
组件可以访问my-form
的{{1}}属性,这样my-input
组件也可以覆盖它,就像用于“名称”输入一样。
有可能吗?
答案 0 :(得分:3)
您可以使用@ContentChildren
,在stackblitz上作为示例:
https://stackblitz.com/edit/angular-content-children-example
我已使用ngAfterViewInit
中的组件引用修改了ContentChildren
中的值。
希望有帮助。如果有更好的方法,请随时更新代码。