Angular mat文件上载StaticInjectorError(AppModule)[HttpHandler->;Injector]

Angular mat文件上载StaticInjectorError(AppModule)[HttpHandler->;Injector],angular,http,angular-material,styles,Angular,Http,Angular Material,Styles,嗨,我正在使用Angular 9和Angular材质。。。我想使用mat文件上传,但在执行应用程序时,会显示下一条错误消息:“StaticInjectorError(AppModule)[HttpHandler->Injector]” 我确实在网上搜索了很多,但我不明白这个问题。。。我认为这可能与一些喷油器或供应商有关,我想所有其他组件都可以正常工作 TS代码 import { BrowserModule } from '@angular/platform-browser'; import {

嗨,我正在使用Angular 9和Angular材质。。。我想使用mat文件上传,但在执行应用程序时,会显示下一条错误消息:“StaticInjectorError(AppModule)[HttpHandler->Injector]”

我确实在网上搜索了很多,但我不明白这个问题。。。我认为这可能与一些喷油器或供应商有关,我想所有其他组件都可以正常工作

TS代码

import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { AppComponent } from './app.component';
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
import { MatFileUploadModule } from 'mat-file-upload'  //this not work 
import { MatButtonModule } from '@angular/material/button'; //this work!
import { HttpClientModule } from '@angular/common/http';


@NgModule({
  declarations: [
    AppComponent
  ],
  imports: [
    BrowserModule,
    BrowserAnimationsModule,
    MatButtonModule,
    MatFileUploadModule,
    HttpClientModule
  ],
  providers: []
})
export class AppModule { }
HTML


点击我!

查看您的代码很难发现错误。你能用标准的方法从角度出发吗

  • 像这样创建
    material.module.ts
  • 从'@angular/core'导入{NgModule};
    导入{
    ...
    }从“@角度/材料”开始;
    从“mat文件上载”导入{MatFileUploadModule};
    @NGD模块({
    进口:[
    ...
    MatFileUploadModule
    ],
    出口:[
    ...
    MatFileUploadModule
    ]
    })
    导出类MaterialModule{}
    
  • 从你的主模块。这里我使用
    components.module.ts
    中的
    MatFileUploadModule
    ,因此我必须将
    material.module.ts
    导入
    components.module.ts

    注意:我必须将其导入当前模块,该模块正在使用您的
    material.module.ts

    我猜这一步你做错了什么

  • 从'@angular/core'导入{NgModule};
    从“@angular/common”导入{CommonModule};
    ...
    从“…/material.module”导入{MaterialModule};
    @NGD模块({
    声明:[
    ...
    ],
    进口:[
    ...,
    材料模块
    ],
    出口:[
    ...
    ],
    入口组件:[
    ...
    ]
    })
    导出类组件模块{}
    
    我想这会解决你的问题

    <div class="common-container">
      <mat-file-upload></mat-file-upload>
    
      <button mat-button>Click me!</button> <!--works when not add mat-file-upload-->
    
    </div>