web-dev-qa-db-ja.com

Angular 2 Material MdSnackBar no Provider

ボタンをクリックするだけで簡単なスナックバーがポップアップするようにしたい。しかし、私は常にエラーが発生します:

エラーエラー:MdSnackBarのプロバイダーがありません!インジェクションエラー(core.es5.js:1169)でnoProviderError(core.es5.js:1207)

import {MdSnackBar} from '@angular/material';
constructor(public snackBar: MdSnackBar){
        this.snackBar.open('hello')
    }
6
Florian

Import MdSnackBarModule次に、インポート内のapp.module.tsファイルにMdSnackBarModuleを追加します

8
Meet Dave

バージョン「@angular/material」:「2.0.0-beta.12」以降を使用している場合は、MatSnackBarModuleをインポートする必要があります

import {MatSnackBarModule} from '@angular/material';

// Use a more specific import if you're using "@angular/material": "8.0.0" and higher
// import {MatSnackBarModule} from '@angular/material/snack-bar';

...

@NgModule({
      imports: [
            ...
            MatSnackBarModule
          ],
    ...
8
Wzorzec