Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/apache-flex/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angular 错误:未找到MatsnakBarContainer的组件工厂_Angular_Angular Material - Fatal编程技术网

Angular 错误:未找到MatsnakBarContainer的组件工厂

Angular 错误:未找到MatsnakBarContainer的组件工厂,angular,angular-material,Angular,Angular Material,我已经开始了一个简单的AngleMaterial项目,并尝试在页面加载时显示快餐店。但它抛出了以下错误:- 错误:未找到MatSnackBarContainer的组件工厂。你加了吗 是否将其发送到@NgModule.entryComponents 我甚至在app.module.ts的条目组件列表中包含了AppComponent,但它不起作用 以下是我的app.component.html:- import { Component } from '@angular/core'; import {

我已经开始了一个简单的AngleMaterial项目,并尝试在页面加载时显示快餐店。但它抛出了以下错误:-

错误:未找到MatSnackBarContainer的组件工厂。你加了吗 是否将其发送到@NgModule.entryComponents

我甚至在
app.module.ts
的条目组件列表中包含了AppComponent,但它不起作用

以下是我的app.component.html:-

import { Component } from '@angular/core';
import { MatSnackBar } from '@angular/material';
@Component({
  selector: 'app-root',
  templateUrl: './app.component.html',
  styleUrls: ['./app.component.css'],
  providers: [MatSnackBar]
})
export class AppComponent {
  title = 'snackbarapp';

  constructor(public snackBar: MatSnackBar) {
    this.snackBar.open('hello', 'world', { duration: 2000 });
  }
}
以下是app.module.ts:-

import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';

import { AppComponent } from './app.component';
import { MatSnackBar } from '@angular/material';
import { Overlay } from '@angular/cdk/overlay';

@NgModule({
  declarations: [AppComponent],
  imports: [BrowserModule ],
  entryComponents: [AppComponent],
  providers: [MatSnackBar, Overlay],
  bootstrap: [AppComponent]
})
export class AppModule {}
我有以下依赖项:-

 "dependencies": {
    "@angular/animations": "^6.1.10",
    "@angular/cdk": "^7.2.0",
    "@angular/common": "^6.1.0",
    "@angular/compiler": "^6.1.0",
    "@angular/core": "^6.1.0",
    "@angular/forms": "^6.1.0",
    "@angular/http": "^6.1.0",
    "@angular/material": "^7.2.0",
    "@angular/platform-browser": "^6.1.0",
    "@angular/platform-browser-dynamic": "^6.1.0",
    "@angular/router": "^6.1.0",
    "core-js": "^2.5.4",
    "rxjs": "^6.0.0",
    "zone.js": "~0.8.26"
  },
  "devDependencies": {
    "@angular-devkit/build-angular": "~0.7.0",
    "@angular/cli": "~6.1.5",
    "@angular/compiler-cli": "^6.1.0",
    "@angular/language-service": "^6.1.0",
    "@types/jasmine": "~2.8.6",
    "@types/jasminewd2": "~2.0.3",
    "@types/node": "~8.9.4",
    "codelyzer": "~4.2.1",
    "jasmine-core": "~2.99.1",
    "jasmine-spec-reporter": "~4.2.1",
    "karma": "~1.7.1",
    "karma-chrome-launcher": "~2.2.0",
    "karma-coverage-istanbul-reporter": "~2.0.0",
    "karma-jasmine": "~1.1.1",
    "karma-jasmine-html-reporter": "^0.2.2",
    "protractor": "~5.4.0",
    "ts-node": "~5.0.1",
    "tslint": "~5.9.1",
    "typescript": "~2.7.2"
  }
如何修复它?

  • 在使用SnackBar模块之前,您必须在中添加app.module.ts:
  • 在导入数组中添加
    matsnakbarmodule

  • 您必须在
    声明
    引导
    数组中添加相关组件(在其中使用snackbar组件):

@NgModule({
声明:[
应用组件
import { MatSnackBarModule } from '@angular/material';
 @NgModule({
   declarations: [
    AppComponent  <-- here
  ],

 imports: [
   MatSnackBarModule  <-- here
 ],

  bootstrap: [
    AppComponent  <-- here
  ],
})
export class AppModule { }