参见英文答案 >
Angular 4.4.0-4.4.2 production build throwing “No provider for NgForm!” error????????????????????????????????????2个
我有一些使用ReactiveForms的组件,但是当我尝试访问它们时,我得到“NgForm没有提供者”.
奇怪的是,在运行“ng serve”时没有发生这种情况,而且只是在运行“ng serve –aot”时,甚至在使用“ng build –prod”进行部署时才会发生这种情况
任何人都知道这里发生了什么?
这是完全的回溯
core.es5.js:1020 ERROR Error: Uncaught (in promise): Error: No provider for NgForm!
Error: No provider for NgForm!
at injectionError (core.es5.js:1169)
at noProviderError (core.es5.js:1207)
at ReflectiveInjector_.webpackJsonp…/../../core/@angular/core.es5.js.ReflectiveInjector_.throwOrNull (core.es5.js:2649)
at ReflectiveInjector.webpackJsonp…/../../core/@angular/core.es5.js.ReflectiveInjector_.getByKeyDefault (core.es5.js:2688)
at ReflectiveInjector.webpackJsonp…/../../core/@angular/core.es5.js.ReflectiveInjector_.getByKey (core.es5.js:2620)
at ReflectiveInjector.webpackJsonp…/../../core/@angular/core.es5.js.ReflectiveInjector_.get (core.es5.js:2489)
at resolveNgModuleDep (core.es5.js:9489)
at 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)
at noProviderError (core.es5.js:1207)
at ReflectiveInjector.webpackJsonp…/../../core/@angular/core.es5.js.ReflectiveInjector_.throwOrNull (core.es5.js:2649)
at ReflectiveInjector.webpackJsonp…/../../core/@angular/core.es5.js.ReflectiveInjector_.getByKeyDefault (core.es5.js:2688)
at ReflectiveInjector.webpackJsonp…/../../core/@angular/core.es5.js.ReflectiveInjector_.getByKey (core.es5.js:2620)
at ReflectiveInjector.webpackJsonp…/../../core/@angular/core.es5.js.ReflectiveInjector_.get (core.es5.js:2489)
at resolveNgModuleDep (core.es5.js:9489)
at 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)
at zone.js:844
at ZoneDelegate.webpackJsonp…/../../../zone.js/dist/zone.js.ZoneDelegate.invokeTask (zone.js:425)
at Object.onInvokeTask (core.es5.js:3881)
at ZoneDelegate.webpackJsonp…/../../../zone.js/dist/zone.js.ZoneDelegate.invokeTask (zone.js:424)
at Zone.webpackJsonp…/../../../zone.js/dist/zone.js.Zone.runTask (zone.js:192)
at drainMicroTaskQueue (zone.js:602)
at ZoneTask.webpackJsonp…/../../../zone.js/dist/zone.js.ZoneTask.invokeTask [as invoke] (zone.js:503)
at invokeTask (zone.js:1427)
我会仔细检查您是否在正确的模块中为使用反应形式的组件导入ReactiveFormsModule.我经常遇到与在一个组件中导入的可观察运算符相同类型的问题,但在使用该运算符的另一个组件中则不会.该应用程序将使用ng服务运行,但不是ng build / aot.