Angular serve 在 dev 中工作,但由于与表单相关的导入而在 prod 中失败

Angular serve works in dev but fails in prod due to a form related import

当我 运行 在我的 Angular 9 应用程序上构建产品时,我收到以下错误。

无法从 MaterialModule 中导出值 FormControl 中的错误,因为它既未声明也未导入!

我在我的应用程序模块中导入了 FormsModule 和 ReactiveForms 模块以及一个名为

的共享模块

// Angular Material Components
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
import { FormsModule }   from '@angular/forms';
import { ReactiveFormsModule, FormControl } from '@angular/forms';

const MatModules = [

  ReactiveFormsModule,
  FormControl,
  FormsModule,
]

@NgModule({
  declarations: [ ],
  imports : [
    FormsModule,
    ReactiveFormsModule
   ],
  exports : [ MatModules ]
})

export class MaterialModule { }

请让我知道我缺少什么。

谢谢!

亲切的问候, 阿迪

我的问题是:为什么要导出 FormControl? 不需要import/exportFormControl,只需要导入ReactiveFormsModule就可以使用FormControl了。

您缺少从 '@material-ui/core'

导入 FromControl
import FormControl from '@material-ui/core/FormControl';
// or
import { FormControl } from '@material-ui/core';

参考:https://material-ui.com/api/form-control/

我创建了一个新的 Angular 9 项目并尝试提供产品构建。问题再次出现。

最后,我没有更改 angular,而是决定使用 Angular 10 作为解决方法。好在新版本一切顺利