【发布时间】:2018-01-11 02:05:57
【问题描述】:
我正在尝试使用 Angular2-Material..
我已经安装了 @angular2/material 和 @angular2/cdk 并想使用 SnackBar..
我已经在 @NgModule 中导入了 MdSnackBarModule
并尝试使用snackBar.open("hello")..
snackbar 显示和文本显示两次:
一次在小吃店,一次在右上角。
我打开了控制台,它向我展示了这一点
MdSnackBarContainer_html:1 :
Error: ExpressionChangedAfterItHasBeenCheckedError: Expression has changed after it was checked. Previous value: 'initial'. Current value: 'visible'.
有人遇到过这种情况吗? 谢谢。
编辑:
从 ngOnInit() 中删除后,该错误不再出现..
但是小吃店仍然有问题,cdk-visually-hidden 类仍然可见..
有什么想法吗?
把代码放在这里有问题..因为它在离线网络中.. 不过我会转储主要部分
app.module.ts:
import {MdSnackBarModule, MdIconModule, OVERLAY_PROVIDERS} from "@angular/material";
...
imports: [... MdSnackBarModule, BrowserAnimationsModule, MdIConModule],
providers: [ OVERLAY_PROVIDERS ]
..
.angular-cli.json:
...
"styles": [
"bootstrap.css"
],
..
templates.component.ts:
...
@Component({
..
providers: [...MdSnackBar]
..
})
..
public constructor(public snackBar: MdSnackBar...)
...
public doSomething() {
this.snackBar.open("Test test test");
}
...
顺便说一句,当我不使用该动作时,文本甚至不会显示在小吃栏上。
【问题讨论】:
-
好的,谢谢.. 我已经从 ngOnInit() 中删除了调用.. 但它仍然显示小吃店错误...不过没有错误.. 有什么想法吗?
-
对不起,没有 plunker 就帮不上忙
-
我已经编辑了问题
-
任何人........?
标签: angular typescript angular-material