当前位置: 首页 > 知识库问答 >
问题:

“打印”对话框后,角形flex布局停止工作

柴辰阳
2023-03-14

我已经创建了一个使用角度材料和角度flex布局的角度应用程序。这个应用程序的问题是,每当我在chrome中按下Ctrl+P键时,导航栏中的所有菜单都消失了,而应该只出现在移动设备中的菜单按钮出现了,最重要的是,整个应用程序变得无法使用。我必须刷新浏览器,使应用程序可重用。我从angular flex布局的github问题页面中读到,当打印对话框出现时,UI线程会中断,因此出现了问题。有没有解决这个问题的办法。

我已经创建了一个git repo相同的“角度响应Navbar”,这样任何人都可以复制这个问题。

共有1个答案

羊舌青青
2023-03-14

在打印对话框关闭后,恢复MediaMarshaller中的活动断点存在一些问题。您可以使用下面的代码进行临时修复。

export class CommonMaterialModule {
  lastValue;

  public constructor (
        m: MediaMarshaller,
      ) {        // @ts-ignore
        m.subject.subscribe((x) => {
          // @ts-ignore
          if (m.activatedBreakpoints.filter((b) => b.alias === 'print').length === 0) {
            // @ts-ignore
            this.lastValue = [...m.activatedBreakpoints];
          } else {
            // @ts-ignore
            m.activatedBreakpoints = [...this.lastValue];
            // @ts-ignore
            m.hook.collectActivations = () => {};
            // @ts-ignore
            m.hook.deactivations = [...this.lastValue];
          }
        });
      }
    }

详解请参考此链接。

 类似资料:
  • WeUI提供了快速的 flex 布局 示例代码 <template> <div class="page"> <div class="page__bd page__bd_spacing"> <div class="weui-flex"> <div class="weui-flex__item"> <div class="placeholde

  • 参考 Flex 布局教程:语法篇

  • Flex是Flexible Box的缩写,意为“弹性布局”,2009年它由W3C提出了一种新的网页布局方案。QAP也支持flex布局。目前flex支持的容器属性有:flexDirection、flexWrap、justifyContent、alignItems、width和height等属性。 flexDirection flexDirection属性决定了主轴的方向,它有两个值(不支持row-r

  • 我试图从实际对话框控制器的视图关闭并重新打开对话框。最终发生的情况是,在对话框关闭/打开后,它不会再次正确关闭。Escape在某些浏览器上工作(但覆盖仍保留),单击背景可能会导致对话框关闭,但覆盖仍保留(取决于浏览器)。 问题:如何从对话框控制器上的函数/按钮/事件关闭/重新打开对话框,以及对话框的关闭是否正常(在转义或单击背景时)。 下面的演示只是一个简单的示例,演示了这个问题,因为我将执行下一

  • 场景是:您在窗口(a)中,单击按钮/链接启动打印过程,然后打开一个新窗口(B),其中包含要打印的内容,打印对话立即显示,如果您单击窗口(B)的取消按钮,那么您应该可以再次打印,但当您单击窗口(B)的打印按钮打印时,您可以打印,但窗口(a)的按钮不能再次继续打印。给我一些解决方案…!!!在chrome,Firefox和internet explorer上工作

  • 问题内容: 我正在尝试制作一个程序,该程序需要用户输入诸如三角形应该多长时间及其方向。我的问题是,在我运行该程序后,它会继续向程序中添加更多的数字。 例如 我的代码: 问题答案: 你有。对于while循环的每个循环,这将继续将输入添加到变量中。您可能想要的只是。 要使其在每次迭代中再次打印出您的第一个提示,只需将您的调用放入while循环内即可。(它也必须先出现,以便 在 输入输入 之前 显示提示