How to open link in a new tab in Angular

In this tutorial, we are going to learn about how to open link in a new tab in Angular app.


Normally, we create a link in Angular using the a element with routeLink attribute.


<a routerLink="/users">Users</a>


If we click on the above link, it will open a Users page in the same tab.



Opening the link in a new tab

To open the link in a new tab, we can use the <a> element by passing a target attribute with a value _blank.

Here is an example:


<a href="https://www.google.com/" target="_blank">Google</a>

Note: In the example above, we have used the href attribute to pass a link instead of routerLink because the routerLink attribute appends the URL to the current URL path.


If you are using target=_blank, your page performance may suffer to avoid that you can use rel="noreferrer noopener".


<a href="https://www.google.com" target="_blank" rel="noreferrer noopener">
   Google
</a>

or, we can use the window.open() method to open the link in a new tab.

Example:

In your component.html file add a click event handler to the <a> element:


<a (click)="openLink()">Google</a>



In your component.ts file create an event handler method like this.


import { Component} from '@angular/core';

@Component({
  selector: 'my-app',
  templateUrl: './app.component.html',
  styleUrls: [ './app.component.css' ]
})
export class AppComponent  {
  openLink(){
    window.open("https://www.google.com")
  }
}