出现在 AppModule 的 NgModule.imports 中,但无法解析为 angular 8 中的 NgModule 类

Kap*_*pil 17 angular8

node_modules/@angular/common/http/http.d.ts:2801:22 中的错误 - 错误 NG6002:出现在 AppModule 的 NgModule.imports 中,但无法解析为 NgModule 类

2801 export declare class HttpClientModule {
Run Code Online (Sandbox Code Playgroud)

小智 11

重启你的服务器...

终止 Windows 的服务器

ctrl + C
Run Code Online (Sandbox Code Playgroud)

重新开始

ng serve
Run Code Online (Sandbox Code Playgroud)

  • 我在“Angular 11”中遇到了同样的问题,您的解决方案解决了..谢谢:-) (2认同)

Hie*_*ran 10

添加"postinstall": "ngcc"scripts: {...}然后package.json运行npm run postinstall解决了问题。

如果你还想保持 Anuglar Ivy 和 AOT 的优势


小智 8

我遇到过同样的问题。
我在这里浏览评论https://github.com/angular/angular/issues/35399以寻求解决方案。

我简单地跑ng serve --prod了,错误消失了。之后我什至跑了ng serve
提出的其他解决方案是

  • 确保您的库的 tsconfig.json 已设置 "importHelpers": true
  • 添加"enableIvy": false到 tsconfig.app.json 中的 compilerOptions


小智 8

只需重新启动服务器(在提示符下按 ctrl+c),然后再次运行 ng serve。

我遇到过同样的问题。然后我意识到以前我在 app.module.ts 中做了一些更改 每次在 app.module.ts 中进行更改时,请记住重新启动服务器进程。


Was*_*siF 6

我遇到过同样的问题。我将其添加servicemoduleieapp.module.tsimports数组中,而不是将其添加到providers数组中。

app.module.ts

@NgModule({
  imports: [
    MyService // wrong here
  ],
  providers: [
    MyService // should add here
  ]
})
export class EventsModule { }
Run Code Online (Sandbox Code Playgroud)