Angular 4,没有NgForm的提供者

时间:2017-09-19 21:09:18

标签: angular

我有一大堆使用ReactiveForms的组件,但是当我尝试访问它们时,我得到了#N;没有NgForm的提供者"。

奇怪的是,在运行" ng serve"并且它正好在运行时发生 - 服务--aot"甚至当我使用" ng build --prod"

进行部署时

任何人都知道它在这里发生了什么?

这是完整的回溯

  

core.es5.js:1020 ERROR错误:未捕获(在承诺中):错误:没有NgForm的提供者!   错误:没有NgForm的提供者!       at injectionError(core.es5.js:1169)       在noProviderError(core.es5.js:1207)       在ReflectiveInjector_.webpackJsonp ... / .. / .. / core/@angular/core.es5.js.ReflectiveInjector _。 throwOrNull(core.es5.js:2649)       在ReflectiveInjector .webpackJsonp ... / .. / .. / core/@angular/core.es5.js.ReflectiveInjector _。 getByKeyDefault(core.es5.js:2688)       在ReflectiveInjector .webpackJsonp ... / .. / .. / core/@angular/core.es5.js.ReflectiveInjector _。 getByKey(core.es5.js:2620)       在ReflectiveInjector .webpackJsonp ... / .. / .. / core/@angular/core.es5.js.ReflectiveInjector_.get(core.es5.js:2489)       at resolveNgModuleDep(core.es5.js:9489)       在NgModuleRef_.webpackJsonp ... / .. / .. / core/@angular/core.es5.js.NgModuleRef_.get(core.es5.js:10577)       at resolveDep(core.es5.js:11080)       at createProviderInstance(core.es5.js:10909)       at injectionError(core.es5.js:1169)       在noProviderError(core.es5.js:1207)       在ReflectiveInjector .webpackJsonp ... / .. / .. / core/@angular/core.es5.js.ReflectiveInjector _。 throwOrNull(core.es5.js:2649)       在ReflectiveInjector .webpackJsonp ... / .. / .. / core/@angular/core.es5.js.ReflectiveInjector _。 getByKeyDefault(core.es5.js:2688)       在ReflectiveInjector .webpackJsonp ... / .. / .. / core/@angular/core.es5.js.ReflectiveInjector _。 getByKey(core.es5.js:2620)       在ReflectiveInjector .webpackJsonp ... / .. / .. / core/@angular/core.es5.js.ReflectiveInjector_.get(core.es5.js:2489)       at resolveNgModuleDep(core.es5.js:9489)       在NgModuleRef_.webpackJsonp ... / .. / .. / core/@angular/core.es5.js.NgModuleRef_.get(core.es5.js:10577)       at resolveDep(core.es5.js:11080)       at _createProviderInstance(core.es5.js:10909)       at resolvePromise(zone.js:795)       at resolvePromise(zone.js:766)       在zone.js:844       在ZoneDelegate.webpackJsonp ... / .. / .. / .. / zone.js / dist / zone.js.ZoneDelegate.invokeTask(zone.js:425)       at Object.onInvokeTask(core.es5.js:3881)       在ZoneDelegate.webpackJsonp ... / .. / .. / .. / zone.js / dist / zone.js.ZoneDelegate.invokeTask(zone.js:424)       在Zone.webpackJsonp ... / .. / .. / .. / zone.js / dist / zone.js.Zone.runTask(zone.js:192)       在drainMicroTaskQueue(zone.js:602)       在ZoneTask.webpackJsonp ... / .. / .. / .. / zone.js / dist / zone.js.ZoneTask.invokeTask [as invoke](zone.js:503)       在invokeTask(zone.js:1427)

1 个答案:

答案 0 :(得分:2)

我会仔细检查您是否在使用反应形式的组件的正确模块中导入ReactiveFormsModule。我经常遇到与在一个组件中导入的可观察操作符相同类型的问题,但在使用该操作符的另一个组件中则不会。该应用将与ng serve一起运行,但不会与ng build/aot一起运行。