7

我正在按照 Angular Material github 上的指南设置自定义全局配置以在小吃栏模块上使用。这是我正在遵循的指南

但是,正如文档中所说的那样,MAT_SNACK_BAR_DEFAULT_OPTIONS仅没有导出,MAT_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 }

但是没有一个选项有效。零食在指定时间后不会自动关闭。

4

2 回答 2

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

providers: [
  {provide: MAT_SNACK_BAR_DEFAULT_OPTIONS, useValue: {duration: 2500}}
]
于 2018-06-25T11:36:52.683 回答
3

我相信你在这里搞砸了

您应该在此处更改持续时间:

@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) { }
于 2018-05-03T15:22:31.347 回答