【问题标题】:How to remove unknown property created during opening of a mat-select modal如何删除在打开垫选择模式期间创建的未知属性
【发布时间】:2020-03-11 03:32:52
【问题描述】:

我在删除打开 mat-select 期间创建的未知分区时遇到问题。

当我打开一个模态并选择值后,我需要直接单击侧面给出的按钮,但是由于模态的某些属性,正在创建一个 div,我必须做 两个单击按钮以应用更改。

现在,当我在 ma​​t-select 模式外部单击以使其关闭然后单击按钮时,它会正确。但是我需要打开模式->选择选项->直接点击给定的按钮。

在打开 ma​​t-select 模式时,后台有东西阻止了第一次点击。我看不到那是什么。是否有一些 css 属性可以被阻止?我没有得到确切的隐藏问题。

【问题讨论】:

    标签: css angular angular-material modal-dialog


    【解决方案1】:

    Angular Material 中的模态默认创建了一些称为“背景”的东西。这个背景就像你的模态后面的一层,填满了整个页面。如果您单击页面上的某个位置,您的目标将是背景,然后关闭模式。

    所以为了你实现,你想实现什么,你有以下选择:

    • 编辑背景行为以不阻止默认点击动作,这样点击背景会关闭模态框,但也会触发您想要的动作

    • 在打开模式时移除背景(这可以通过在 open 方法配置参数中设置标志 hasBackdrop 来完成)并通过触发 MatDialogRef 的 close 方法以编程方式关闭模式

    【讨论】:

    • 我现在正在使用 mat-select。我怎么能这样做呢。添加了 [disableRipple] : true at <mat-select> 然后也不起作用。
    【解决方案2】:

    这是标准的模态行为,您应该在打开模态之前或在打开后的模态本身中包含所有需要的选项。

    【讨论】:

    • 没有得到这样的声明“您应该在打开模态之前或在打开后的模态本身中包含所有需要的选项”。是否有任何解决方法或角垫模态属性要禁用,以便我可以直接单击其他组件?
    • 问题本身,打开时从外部修改模态内容是否合乎逻辑?我相信不会。这就是为什么我告诉你作为模态行为应用并显示阴影的原因,一件事是只关注模态内容,也许用户可以通过复选框甚至输入文本值然后确认,但从外部它!!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-02-21
    • 2019-01-23
    • 1970-01-01
    • 1970-01-01
    • 2016-08-01
    相关资源
    最近更新 更多