在单向数据流中如何处理Angular 2形式?特别是在几个父/子组件之间进行验证?
我使用ngrx /存储和模型驱动窗体与窗体生成器..可以做类似于形式reducer在React,并使它作为商店的一部分吗?
你有一些文章吗?
在我使用Angular 2构建的应用程序中,以下准则似乎运行良好:
父组件通过数据绑定将数据传递给孩子。子组件通过向父组件发出输出事件来请求数据更改。相应地,父母组成部分有责任采取行动。
在分层组件结构中,数据更改由依赖于数据的最低组件处理。如果有另一个组件更高或依赖于同一数据项的兄弟节点,通过发出事件向上传递更改,并将处理留给更高的组件。
该方案工作良好,因为对于与多于一个组件相关的任何数据,存在负责执行改变的单个组件。更改气泡自动。组件是可重用的,并且组件树中的更改可以轻松调整。
关于验证,梯子中的任何组件在发出数据改变请求的最低组件到最终处理改变的最高组件之间,任何组件可以通过不将其向上传递而有效地消除改变。在大多数应用程序中,我会选择在更改的起点验证数据更改。
自然地,子组件仍然可以具有内部状态,并且不需要传达改变 – 除非改变与父组件相关。