是的,这个老栗子。
我正在为大型对象树创建编辑器,为了从主要组件中消除混乱,在树的顶点处为每种属性类型创建组件似乎很明智。但是,这造成了一个问题,即由于在子组件(@Input
中实现了该编辑器,因此无法更新主JSON对象。
使用@Output
和EventEmitter
似乎不可行,因为:
我能想到的唯一解决方案是不使用组件,而只编写大型的整体编辑器。
有更好的方法吗?
答案 0 :(得分:0)
您描述的方式非常标准。不过,另一种选择是使用模板#
变量来访问您的子属性。
<hello #childcomponent name="{{ name }}"></hello>
<div>
{{ childcomponent.name }} - Parent component
</div>
您也可以使用它通过打字稿来访问子组件。
@ViewChild('childcomponent') childcomponent;