考虑以下应用布局:
我们的应用包含智能组件 A ,其中哑组件 A_dumb 。 A_dumb 包含愚蠢的子组件 B_dumb 和 C_dumb ,它们是 A 的孙子。
B_dumb 和 C_dumb 从 A 中提取数据。他们认为,除了他们在 A_dumb 视野中的立场,独立于 A_dumb 。
关于数据分发和事件处理的大多数建议都是在桶式标记(A - > A_dumb - > B_dumb,反之亦然)的方向或使用统一服务。
由于我正在使用ngrx,我倾向于不使用该服务,因为我不想处理订阅,而是使用智能组件模板中的异步管道,这让我有了桶式文件。
但是,桶式标记很多样板,我们有for f in *.png;do convert "$f" -resize 200% -type Grayscale "$(basename "$f" .png).tif";done
。我们可以将所有哑组件直接绑定到我们的智能组件,然后将它们投射到“主”哑组件。
这是智能组件:
<ng-content></ng-content>
这是观点:
// a.html
<a-dumb [data]="mybinding$ | async">
<b-dumb [data]="myotherbinding$ | async"></b-dumb>
<c-dumb [data]="mythirdbinding$ | async"></c-dumb>
</a-dumb>
在我看来,对于那些不直接属于组件视图但从视图中绘制样式和定位的小部件孙子来说,这是有意义的。
如果需要这种方法,我对您对该主题的看法以及赞成和反对意见感兴趣。不幸的是,尽管搜索到了这一点,我还是找不到任何意见......