如何防止角材料垫菜单关闭?

2024-01-10

我正在角度材料中创建一个日期时间选择器控件,并使用以下代码来执行此操作

<button mat-button [matMenuTriggerFor]="menu">
    <mat-icon>date_range</mat-icon>
    <span>Date Range</span>
</button>
<mat-menu #menu="matMenu">
    <div fxLayout="row">
        <div fxLayout="column">
            <button (click)="setInterval(15)" mat-menu-item>Last 15 minutes</button>
            <button (click)="setInterval(360)" mat-menu-item>Last 6 hours</button>
            <button (click)="setInterval(1440)" mat-menu-item>Last 24 hours</button>
            <button (click)="setInterval(2880)" mat-menu-item>Last 2 days</button>
            <button (click)="setInterval(10080)" mat-menu-item>Last 7 days</button>
            <button (click)="setInterval(-1)" [matMenuTriggerFor]="dateTimeMenu" mat-menu-item>Custom</button>
        </div>
        <mat-menu class="date-range-menu" #dateTimeMenu="matMenu">
            <div fxLayout="row">
                <div fxLayout="column">
                    <b>From</b>
                    <mat-calendar></mat-calendar>
                </div>
                <div fxLayout="column">
                    <b>To</b>
                    <mat-calendar></mat-calendar>
                </div>
            </div>
        </mat-menu>
    </div>
</mat-menu>

目前,每当我单击按钮时,它都会关闭菜单。我知道我们可以对每个 mat-menu-item 执行 $event.stoppropagation() 以防止其关闭。

但我想知道是否可以为 mat-calendar 做到这一点

正如您在上图中看到的,当前当我选择日期时,它正在关闭菜单。有可能阻止这种情况吗?


你只需添加(click) = "$event.stopPropagation()"这些日历的父元素。就像下面这样,

<mat-menu class="date-range-menu" #dateTimeMenu="matMenu">
    <div fxLayout="row">
        <div fxLayout="column" (click)="$event.stopPropagation();">
            <b>From</b>
            <mat-calendar></mat-calendar>
        </div>
        <div fxLayout="column" (click)="$event.stopPropagation();">
            <b>To</b>
            <mat-calendar></mat-calendar>
        </div>
    </div>
</mat-menu>

Stackblitz 演示 https://stackblitz.com/edit/angular-material2-issue-ngnkwv?file=app%2Fapp.component.html.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何防止角材料垫菜单关闭? 的相关文章

随机推荐

  • Pusher 未定义! Laravel 5.4 与 Laravel Echo

    我不知道我的代码有什么问题 这是我的app js First we will load all of this project s JavaScript dependencies which include Vue and Vue Reso
  • 如何在 postgres 中创建具有默认值的枚举

    我想在 postgres 中创建具有默认值的类型枚举 是的 我已经看到之前对此枚举提出的问题已经检查过 或者请任何人都可以建议我如何完成以下表结构 基本上我需要这样 create type status as enum pending ap
  • Guid 是原始类型还是复杂类型? [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我们根据要扩展的原始类型和复杂类型来
  • insert exec 语句不能嵌套

    你好 我有一个名为Test ProcA我想打电话Test ProcB 我创建了一个名为的临时表 temp具有匹配的名称和数据类型返回Test ProcB 如何插入返回的结果集Test ProcB into temp 当我尝试这样做时 我不断
  • SQL 搜索列,其中列中的一项是另一项更新的子字符串

    这个问题是我原来的问题的结果 我认为这并不完全是我想要的 SQL 搜索列 其中列中的一项是另一项的子字符串 https stackoverflow com questions 25628400 sql search column where
  • 写入进程内存 ERROR_PARTIAL_COPY 299

    我正在尝试写入另一个进程的内存 我使用权限 38h VM OPERATION VM READ VM WRITE 打开它 然后我使用 VirtualProtectEx 并使用权限 4h PAGE READWRITE 但我也尝试了 PAGE E
  • Java 8 - 从 Collection.stream.map() 调用多参数方法

    我使用 java 8 Streams 一段时间了 我遇到了一种情况 我需要流式传输列表并将每个元素与另一个参数一起传递给静态方法 在java 8中可以吗 String designation Engineer List
  • 反连接和反半连接有什么区别?

    From http www dbspecialists com files presentations semijoins html http www dbspecialists com files presentations semijo
  • Pandas 日期范围返回 yyyy-ww 的“无法将字符串转换为时间戳”

    我有一个包含两列的数据框 Sales and Date dataset head 10 Date Sales 0 2015 01 02 34988 0 1 2015 01 03 32809 0 2 2015 01 05 9802 0 3 2
  • UIApplication.statusBarStyle 在 vi​​ewWillAppear 和 viewDidAppear 之间变化

    在 iOS7 中运行最初为以前版本设计的应用程序时 深灰色的导航栏会将文本为黑色的状态栏着色 我正在尝试使其适应最新版本 并将 UIApplication statusBarStyle 设置为 UIStatusBarStyleLightCo
  • 如何实现停止/取消按钮?

    我有一个方法 processData 它需要大量数据并对其进行一些处理 有一个启动按钮可以启动处理 我需要一个取消按钮来停止处理 无论它在哪里 我怎样才能实现这样的事情 我不明白的是如何在处理开始后使取消按钮可用 因为当函数运行时 UI 的
  • Mac OS X + Python + Django + MySQL

    我花了几天的时间试图让 MySQL 与 Mac OS X Python 我已经尝试过 2 7 和 3 3 和 Django 1 6 一起工作 这个主题在 SO 和其他地方的许多网页上都有讨论 并且持续了很多年 一个解决方案专门使用 MySQ
  • 如何修复 vim 以正确缩进包含 Python 注释行的折叠?

    我将 vim 的折叠方法设置为缩进 这在编写 Python 时效果很好 除非我有注释行 例如 如果我有这段代码 def myFunction here is my comment myString hello myInt 2 如果我将光标放
  • 为什么从iis调用XMLRPC时fiddler没有捕获请求?

    我有一个用 NET 编写的 Web 应用程序 它利用 CookComputing XmlRpcV2 进行 xmlrpc 通信 当我在 Visual Studio 2008 中调用单元测试时 fiddler2 成功捕获实际的 xmlrpc 请
  • 从 SFX 运行时批处理文件的行为有所不同

    因此 我编写了一个批处理文件来将客户端转换为云服务 并且我从中看到了一些奇怪的行为 因此 这基本上会查找特定的文件夹 无论它是否存在 它都会使用 GOTO 继续前进 当我使用 WinRAR 将其压缩为 SFX 并指示它运行批处理文件时 它永
  • 从应用程序范围的用户 ID 获取 Facebook 用户 ID

    从 Facebook Graph API v1 0 升级到 v2 0 后 Facebook 使用 应用程序范围的用户 ID 因此我无法再在应用程序中看到 原始 用户 ID 我总是使用实时更新和图形 API 调用 例如 https graph
  • 无论我尝试什么,CFBundleDisplayName 的本地化都不起作用

    有人可以告诉我如何找到问题吗 我有一个名为 MyApp 的应用程序 我想将应用程序名称本地化为德语 我在主项目目录中有一个目录 de lproj 它包含一个文件 Localized strings 并且工作正常 我添加了一个 InfoPli
  • 如何在图像上方添加渐变边框(对角线边框)[重复]

    这个问题在这里已经有答案了 我需要这样的东西 但在图像上方 这是我的第一次尝试 但它不起作用 http jsfiddle net wo8gbhx3 17 http jsfiddle net wo8gbhx3 17 这是我的标记 现在 HTM
  • Rails 3 使用 Ajax 计算行总数

    我有一个发票应用程序 发票有行项目 提交发票后 即可正确计算行总计和总计 但我还想在提交发票之前计算行总计和总计 例如 如果您更改数量 则行总计和总计应更改 我目前正在研究不同的 jQuery 插件 也许你过去也做过类似的事情 你会推荐什么
  • 如何防止角材料垫菜单关闭?

    我正在角度材料中创建一个日期时间选择器控件 并使用以下代码来执行此操作