javascript - 仅打开一个带 Angular 弹出选项卡

标签 javascript angular typescript

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

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(查了一下但无法实现)还是有其他方法?

最佳答案

试试这个,

在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 " );

关于javascript - 仅打开一个带 Angular 弹出选项卡,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55060065/

相关文章:

node.js - 如何在 typescript 中使用 "debug"模块

javascript - 如何阻止出现多个小书签?

angular - 尝试对 Angular 进行 dockerize 时出现 Dockerfile 错误 - 没有这样的文件或目录

asp.net-mvc - 使用 MVC5 应用程序的 Angular Cli 延迟加载

javascript - 我应该编译到哪个版本的 JavaScript?

angular - 找不到模块 'date-fns'

javascript - findOneAndUpdate() 基于查找查询条件的子数组

javascript - 用 lodash 扩展 Javascript 对象哪个更好?有什么不同?

javascript - 简化具有重复结果的嵌套 if/else?

angular - <ion-icon> Ionic 4 - Angular 7 中的 fontawesome 集成