使用Angular2在页面中导入大量表单组件

时间:2016-02-16 08:44:52

标签: angular angular2-forms

我有一个组件有一个相当大的菜单,并且对于每个菜单项我有一个不同的表单来显示,将有至少100种不同的形式,预计会有几百个。现在问题是可以导入所有这些表单组件吗?有不同的方式吗?

与此相关的另一件事是,我有一个变量包含所有子组件的有用信息,使用依赖注入提供它是一个好主意,还是应该通过@Input插入所有子组件?

1 个答案:

答案 0 :(得分:2)

如果您使用路由器加载表单组件,则可以使用AsyncRoute进行延迟加载。

如果要将值传递给直接子组件或指令,则

@Input绑定很方便 如果您需要传递给不是直接子节点的组件,则服务仍然有效,而绑定则不然。

我会说,在你的情况下使用更方便的东西。

通过路由器或DynamicComponentLoader添加组件,服务通常更方便。

您可以创建一个查找表(一个用名称

注册所有类型的对象)
{ MyComponent1: MyComponent1, MyComponent1: MyComponent2, ...}

然后使用字符串名称查看类型。 Angular正在进行预渲染,我想用这种方式一次加载所有组件会更有效。