【问题标题】:Angular 6 : Can not load dynamic formAngular 6:无法加载动态表单
【发布时间】:2019-03-17 07:39:30
【问题描述】:

我想动态加载表单,但是当我单击按钮加载第二个表单时出现错误。

据我了解,@Viewchild 在我的子组件中设置了 fields 属性,但在单击按钮加载第二个表单时不会更新该属性。

另见 app-component 中的 loadForm 方法。

错误 错误:找不到名称为“userName”的控件

我在 stackbliz 中有一个工作示例。

https://angular-y3n2u9.stackblitz.io

查看控制台日志以查看错误消息

任何人都知道为什么我的 demoform-component 中没有加载第二个表单。

谢谢

约翰

【问题讨论】:

标签: angular forms


【解决方案1】:

所有原始类型都是按值传递的。对象、数组和函数也是按值传递的,因此当您加载 form2 时不会触发更改检测尝试 ngOnChanges 生命周期钩子它将起作用。

    ngOnChanges(){
         this.dynamicForm = this.createForm();
    }

例如:https://stackblitz.com/edit/angular-y3n2u9

【讨论】:

    猜你喜欢
    • 2019-04-04
    • 2019-04-15
    • 2020-06-07
    • 1970-01-01
    • 1970-01-01
    • 2019-05-10
    • 2019-01-07
    • 2018-11-23
    • 2019-06-12
    相关资源
    最近更新 更多