kau*_*hik 4 printing responsive angular-flex-layout angular
我使用 angular material 和 angular flex layout 创建了一个 angular 应用程序。该应用程序的问题在于,每当我在 chrome 中按 Ctrl + P 时,导航栏中的所有菜单都会消失,并且只应出现在移动设备中的菜单按钮会出现,最重要的是整个应用程序变得无法使用。我必须刷新浏览器才能使应用程序可重用。我从 angular flex 布局的 github 问题页面中读到,当打印对话框出现时,UI 线程被中断,因此出现了问题。是否有解决此问题的方法。
我为相同的“ angular-responsive-navbar ”创建了一个git repo,以便任何人都可以重现该问题。
关闭打印对话框后,在 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];
}
});
}
}
Run Code Online (Sandbox Code Playgroud)
请参阅此链接以获取详细说明。
| 归档时间: |
|
| 查看次数: |
484 次 |
| 最近记录: |