Angular Material Snackbar全局配置

时间:2018-05-03 15:14:09

标签: angular angular-material angular5 angular-material-5

我按照Angular Material github上的指南设置自定义全局配置以在快餐栏模块上使用。这是guide I'm following

但是,作为文档中的sais,MAT_SNACK_BAR_DEFAULT_OPTIONSMAT_SNACK_BAR_DATA没有导出,但它不会覆盖默认配置。

这就是我的尝试:

import { MatSnackBarModule, MAT_SNACK_BAR_DATA } from '@angular/material/snack-bar';

providers: [
    { provide: MAT_SNACK_BAR_DATA, useValue: { duration: 2500 } }
]

我也尝试过这样:

{ provide: MatSnackBarConfig, useValue: { duration: 2500 } }
{ provide: MatSnackBarConfig, useClass: SnackClass }

但是没有一个选项可行。小吃从未在指定时间后自动解散。

2 个答案:

答案 0 :(得分:2)

我相信你在弄乱这里的东西

你应该在这里改变持续时间:

@NgModule({
  providers: [
    {provide: MAT_SNACK_BAR_DEFAULT_OPTIONS, useValue: {duration: 2500}}
  ]
})

并且必须在构造函数中注入MAT_SNACK_BAR_DATA:

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

constructor(@Inject(MAT_SNACK_BAR_DATA) public data: any) { }

答案 1 :(得分:1)

import { MAT_SNACK_BAR_DEFAULT_OPTIONS } from '@angular/material/snack-bar';

providers: [
  {provide: MAT_SNACK_BAR_DEFAULT_OPTIONS, useValue: {duration: 2500}}
]