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

“打印”对话框后,Angular flex布局停止工作,angular,printing,responsive,angular-flex-layout,Angular,Printing,Responsive,Angular Flex Layout,我使用angular材质和angular flex布局创建了一个angular应用程序。该应用程序的问题在于,每当我在chrome中按下Ctrl+P键时,导航栏中的所有菜单都会消失,只在移动设备中出现的菜单按钮也会出现,最重要的是,整个应用程序都无法使用。我必须刷新浏览器以使应用程序可重用。我从angular flex布局的github问题页面上读到,当打印对话框出现时,UI线程被中断,因此出现了问题。这个问题有解决办法吗 我已经为同一个“”创建了git回购,以便任何人都可以复制该问题 关闭打印

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


我已经为同一个“”创建了git回购,以便任何人都可以复制该问题

关闭打印对话框后,恢复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];
          }
        });
      }
    }

请参阅详细解释。

我会检查并回复。谢谢你的回复