首页 > 解决方案 > 仅打开一个带有角度的弹出选项卡

问题描述

我想知道如何只打开一个选项卡,在打开另一个选项卡之前,必须关闭前一个选项卡。我通过单击按钮打开选项卡,

onClick(){
        let url = this.router.createUrlTree(['/user/', this.id]);
        window.open(url.toString(), "_blank", "resizable=no, toolbar=no, scrollbars=no, menubar=no, status=no, directories=no, location=no, width=1000, height=600, left=" + horizontal + " top=100 " );
        console.log(this.data.maxtab);
        } 

它导致嵌套在另一个组件中的组件“用户”。

当打开一个组件并尝试打开另一个组件时,打开的组件应该是焦点。

我试图更改一个变量,我在组件的 ngOnDestroy 上调用了 maxtab,但它不起作用。我怎样才能实现它?使用带有 JS 的 OnBeforeunload(查找但无法实现)还是有其他方法?

标签: javascriptangulartypescript

解决方案


试试这个,

在 component.ts 中声明一个变量

private mywindow;

现在在你的函数中,试试这个:

if(this.mywindow) {
 this.mywindow.close();
}
this.mywindow = window.open(url.toString(), "_blank", "resizable=no, toolbar=no, scrollbars=no, menubar=no, status=no, directories=no, location=no, width=1000, height=600, left=" + horizontal + " top=100 " );

推荐阅读