Angular Material documentation上的 snackbar 示例中,操作设置为undo。我还想要一个撤销小吃吧。

但是有一个问题。单击关闭按钮时以及持续时间过去时,将触发afterDismissed事件。因此,我的表单清除按钮将清除表单并显示 snackbar ,但是5秒钟后,输入又返回了。

有没有办法检查撤消是否由撤消按钮调用?我不想使用自定义的 snackbar ,因为我必须重新制作 snackbar 的设计...

最佳答案

当您订阅afterDismissed事件时,您应该能够知道该事件是否来自小吃吧 Action 。

因此,例如,如果您打开 snackbar :
const snackBarRef = this.snackBar.open('Dummy message', 'Undo', {duration: 5000});
然后订阅 Activity :

snackBarRef.afterDismissed().subscribe(info => {
  if (info.dismissedByAction === true) {
    // your code for handling this goes here
  }
});

关于angular - 如何使用Angular Material snackbar 检查解雇原因?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/48423421/

10-12 12:24