繁体   English   中英

从 MatDialog 返回值而不关闭它

[英]Return value from MatDialog without closing it

当用户在我的 MatDialog 中提交一个值时,我有这个提交MatDialog

  submit() {
    this.dialogRef.close(this.name);
  }

我想在对话框中实现一个新按钮“提交并新建”,以便用户可以添加另一个 object 并提交。

有没有办法在不实际关闭对话框的情况下返回一个值,这样我就可以重置他的 state 没有新的 object?

我认为没有,但是您可以通过三种解决方案来做到这一点:

  1. 使用服务来执行您的逻辑而不是使用.close :逻辑将完成,并且对话框将保持打开状态。

  2. 像当前一样关闭对话框,执行您的逻辑,然后打开一个新对话框。

  3. 将您的逻辑负载放入一个数组中,直到用户完成为止。 一旦他不要求“提交并新建”,而只是“提交”,就为数组的每个元素调用你的逻辑。

要采取的解决方案由您决定,但所有 3 个都可以接受,改变的因素只是用户体验。

(如你所知,我的个人解决方案是第三个)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM