角2反应形式错误-TypeError:this.form.get不是一个函数

塔森

我正在使用以下Angular 2 RC 5:

  • esnext
  • 网页包
  • 反应形式

我建立了一个简单的测试表单,并且在浏览器控制台中遇到以下错误:

zone.js:461Unhandled Promise rejection: EXCEPTION: Error in ./FormComponent class FormComponent - inline template:4:25
ORIGINAL EXCEPTION: TypeError: this.form.get is not a function
ORIGINAL STACKTRACE:
TypeError: this.form.get is not a function
    at FormGroupDirective.addControl (https://tahseen.github.io/angular2-reactive-form-webpack-esnext/loads.bundle.js:35832:31)
    at FormControlName.ngOnChanges (https://tahseen.github.io/angular2-reactive-form-webpack-esnext/loads.bundle.js:35650:33)
    at DebugAppView._View_FormComponent0.detectChangesInternal (FormComponent.ngfactory.js:230:55)
    at DebugAppView.AppView.detectChanges (https://tahseen.github.io/angular2-reactive-form-webpack-esnext/loads.bundle.js:18565:15)
    at DebugAppView.detectChanges (https://tahseen.github.io/angular2-reactive-form-webpack-esnext/loads.bundle.js:18671:45)
    at DebugAppView.AppView.detectViewChildrenChanges (https://tahseen.github.io/angular2-reactive-form-webpack-esnext/loads.bundle.js:18591:20)
    at DebugAppView._View_FormComponent_Host0.detectChangesInternal (FormComponent.ngfactory.js:31:8)
    at DebugAppView.AppView.detectChanges (https://tahseen.github.io/angular2-reactive-form-webpack-esnext/loads.bundle.js:18565:15)
    at DebugAppView.detectChanges (https://tahseen.github.io/angular2-reactive-form-webpack-esnext/loads.bundle.js:18671:45)
    at ViewRef_.detectChanges (https://tahseen.github.io/angular2-reactive-form-webpack-esnext/loads.bundle.js:16397:66)

这是我的代码:

form.component.js

import { Component } from '@angular/core';
import { FormBuilder } from '@angular/common';

import template from './form.component.html'

@Component({
    selector: 'load-form',
    template: template
})
export class FormComponent {
    carriers = [];
    stations = [];
    loadForm = {};

    constructor(formBuilder : FormBuilder) {
        this.formBuilder = formBuilder;

        this.loadForm = this.formBuilder.group({
            carrierId: '',
            carrierStationId: ''
        });

        console.log("constructor")
    }

    ngOnInit() {
        console.log("ngOnInit")
    }

    saveLoad(data) {
        console.log(data);
    }
}

form.component.html

<form [formGroup]="loadForm" (ngSubmit)="saveLoad(loadForm.value)">
  <div>
    <label>Carrier</label>
    <div>
      <input type="text" formControlName="carrierId">
    </div>
  </div>

  <div>
    <label>Station</label>
    <div>
      <input type="text" formControlName="carrierStationId">
    </div>
  </div>

  <div>
    <button type="submit" >[+] Add Load</button>
  </div>
</form>

有人知道这里要发生什么吗?我已经坚持了好几天了。

完整的代码可以在这里找到:

https://github.com/tahseen/angular2-reactive-form-webpack-esnext

带有错误的实时示例可以在这里看到:

https://tahseen.github.io/angular2-reactive-form-webpack-esnext/

塔森

我将此发布在有角的github上。他们在那里的开发人员能够为我解决它。

https://github.com/angular/angular/issues/11171#issuecomment-243583467

您的示例中似乎发生了一些事情:

1)您不需要在模块定义中添加REACTIVE_FORM_DIRECTIVES或FormProviders。当您导入ReactiveFormsModule时,将包括这些。

2)您正在从@ angular / common导入一些符号。那就是旧API所在的地方,并且与新API不兼容。如果您将表单组件文件中的FormBuilder导入更改为指向@ angular / forms中的新API,则将按预期加载表单。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

反应-TypeError:jokes.map不是一个函数

来自分类Dev

Angular2-TypeError:this.http.get(...)。toPromise不是一个函数

来自分类Dev

反应未捕获的TypeError:this.setState不是一个函数

来自分类Dev

反应TypeError:this.state.List.map不是一个函数

来自分类Dev

在AS3上遇到此错误。TypeError:错误#1006:value不是一个函数。

来自分类Dev

angular 2:TypeError:this.form.updateValueAndValidity不是函数

来自分类Dev

d3错误,来自plotly:TypeError:e.getAttribute不是一个函数

来自分类Dev

从构造方法调用方法:错误:未捕获的TypeError:未定义不是一个函数

来自分类Dev

deferred.resolve给出错误TypeError:undefined不是一个函数

来自分类Dev

我收到此错误Uncaught TypeError:this.getElements不是一个函数

来自分类Dev

获取错误未捕获的TypeError:document.querySelectorAll(...)。addEventListener不是一个函数

来自分类Dev

未捕获的TypeError:_this.props.data.map不是一个函数,映射错误以渲染组件

来自分类Dev

错误处理SQL:TypeError:window.openDatabase不是一个函数

来自分类Dev

试图用JavaScript计时,出现错误,Uncaught TypeError:undefined不是一个函数

来自分类Dev

错误:未被捕获的TypeError:this.draw不是一个函数

来自分类Dev

Highchart未捕获的错误-Uncaught TypeError:$(...)。highcharts不是一个函数

来自分类Dev

Angular 2打字稿:TypeError:this.validator不是一个函数

来自分类Dev

Angular2 TypeError:linkParams.forEach不是一个函数

来自分类Dev

Webpack-未捕获的TypeError:(0,_reactDom2.default)不是一个函数

来自分类Dev

TypeError:.json WEBPACK_IMPORTED_MODULE_2 __。filter不是一个函数

来自分类Dev

React Flux Uncaught TypeError:_LocalityStore2.default.setSelectedLocality不是一个函数

来自分类Dev

TypeError:jQuery(...)。on不是一个函数

来自分类Dev

TypeError:this。$ set不是一个函数

来自分类Dev

TypeError:require(...)不是一个函数

来自分类Dev

TypeError:$(...)。datepicker不是一个函数

来自分类Dev

TypeError:* .getMonth不是一个函数

来自分类Dev

TypeError:func(...)。then不是一个函数

来自分类Dev

TypeError:$(...)。dialog不是一个函数

来自分类Dev

TypeError:$(...)。datepicker不是一个函数

Related 相关文章

  1. 1

    反应-TypeError:jokes.map不是一个函数

  2. 2

    Angular2-TypeError:this.http.get(...)。toPromise不是一个函数

  3. 3

    反应未捕获的TypeError:this.setState不是一个函数

  4. 4

    反应TypeError:this.state.List.map不是一个函数

  5. 5

    在AS3上遇到此错误。TypeError:错误#1006:value不是一个函数。

  6. 6

    angular 2:TypeError:this.form.updateValueAndValidity不是函数

  7. 7

    d3错误,来自plotly:TypeError:e.getAttribute不是一个函数

  8. 8

    从构造方法调用方法:错误:未捕获的TypeError:未定义不是一个函数

  9. 9

    deferred.resolve给出错误TypeError:undefined不是一个函数

  10. 10

    我收到此错误Uncaught TypeError:this.getElements不是一个函数

  11. 11

    获取错误未捕获的TypeError:document.querySelectorAll(...)。addEventListener不是一个函数

  12. 12

    未捕获的TypeError:_this.props.data.map不是一个函数,映射错误以渲染组件

  13. 13

    错误处理SQL:TypeError:window.openDatabase不是一个函数

  14. 14

    试图用JavaScript计时,出现错误,Uncaught TypeError:undefined不是一个函数

  15. 15

    错误:未被捕获的TypeError:this.draw不是一个函数

  16. 16

    Highchart未捕获的错误-Uncaught TypeError:$(...)。highcharts不是一个函数

  17. 17

    Angular 2打字稿:TypeError:this.validator不是一个函数

  18. 18

    Angular2 TypeError:linkParams.forEach不是一个函数

  19. 19

    Webpack-未捕获的TypeError:(0,_reactDom2.default)不是一个函数

  20. 20

    TypeError:.json WEBPACK_IMPORTED_MODULE_2 __。filter不是一个函数

  21. 21

    React Flux Uncaught TypeError:_LocalityStore2.default.setSelectedLocality不是一个函数

  22. 22

    TypeError:jQuery(...)。on不是一个函数

  23. 23

    TypeError:this。$ set不是一个函数

  24. 24

    TypeError:require(...)不是一个函数

  25. 25

    TypeError:$(...)。datepicker不是一个函数

  26. 26

    TypeError:* .getMonth不是一个函数

  27. 27

    TypeError:func(...)。then不是一个函数

  28. 28

    TypeError:$(...)。dialog不是一个函数

  29. 29

    TypeError:$(...)。datepicker不是一个函数

热门标签

归档