在Angular Material documentation上的snackbar示例中,操作设置为 undo
. 我还想要一个撤销零食吧 .
但是有一个问题 . 单击“关闭”按钮时会触发 afterDismissed
事件,但也会在持续时间过去时触发 . 因此,我的表单清除按钮将清除表单并显示小吃栏,但在5秒后输入返回 .
有没有办法检查撤消按钮是否调用了解雇?我不想使用自定义Snackbar,因为我必须重新制作零食吧设计......
在Angular Material documentation上的snackbar示例中,操作设置为 undo
. 我还想要一个撤销零食吧 .
但是有一个问题 . 单击“关闭”按钮时会触发 afterDismissed
事件,但也会在持续时间过去时触发 . 因此,我的表单清除按钮将清除表单并显示小吃栏,但在5秒后输入返回 .
有没有办法检查撤消按钮是否调用了解雇?我不想使用自定义Snackbar,因为我必须重新制作零食吧设计......
2 回答
当您订阅
afterDismissed
活动时,您应该能够了解该活动是否来自小吃店行动 .例如,如果你打开你的零食店:
const snackBarRef = this.snackBar.open('Dummy message', 'Undo', {duration: 5000});
然后订阅该活动:
我不确定它何时被添加,但是MatSnackbarRef现在包含一个单独的
onAction
可观察对象,只有在实际点击按钮时才会调用它 .