Home Web Front-end JS Tutorial Detailed explanation of the implementation steps of angular route highlighting

Detailed explanation of the implementation steps of angular route highlighting

May 15, 2018 am 09:48 AM
angular accomplish step

This time I will bring you angularroutingDetailed explanation of the implementation steps of highlighting, what are the notes of angular routing highlighting implementation, the following is a practical case, let’s take a look .

What is route highlighting? what is the benefit?

When you are working on a backend management system, there is a row of routes on the left Navigation. Click to enter different pages. Then the dom element where this route is located will add a style to indicate the current It's the location.

But when you refresh, you will find that this style is gone...

What should I do?

Use route highlighting: When the route is activated, you are allowed to add a class on the dom element where you add the route. This style will only be removed when the url changes.

The current route is activated or the current route is in the activated stateStateIndicates that the route in the url of the page and the route in the current dom tag want to match.

// 用法概览
@Directive({
  selector: '[routerLinkActive]',
  exportAs: 'routerLinkActive'
})
class RouterLinkActive implements OnChanges, OnDestroy, AfterContentInit {
 constructor(router: Router, element: ElementRef, renderer: Renderer2, cdr: ChangeDetectorRef)
 links: QueryList<RouterLink>
 linksWithHrefs: QueryList<RouterLinkWithHref>
 get isActive: boolean
 routerLinkActiveOptions: {...}
 set routerLinkActive: string[] | string
 ngAfterContentInit(): void
 ngOnChanges(changes: SimpleChanges): void
 ngOnDestroy(): void
}
Copy after login

Example

.red{
  color: red;
}
Copy after login
<a routerLink="/user/login" routerLinkActive="red">login</a>
Copy after login

When the url is user or /user/login, the a tag will be added with classred. When the url changes to something else, the class will be removed.

How to add two classes?

<a routerLink="/user/login" routerLinkActive="class1 class2">login</a>
Copy after login

Two ways to write routerLinkActive

<a routerLink="/user/login" routerLinkActive="class1 class2">login</a>
<a routerLink="/user/login" [routerLinkActive]="['class1', 'class2']">login</a>
Copy after login

You can also configure parameters for routerLinkActive

Pass exact: true to indicate that the route completely matches It is highlighted, such as

Copy code The code is as follows:

<a routerLink="/user/login" routerLinkActive="red" [routerLinkActiveOptions]="{ exact: true}">login</a>

You can also use isActive to check whether the route is currently active

&lt;a routerLink=&quot;/user/login&quot; routerLinkActive #rla=&quot;routerLinkActive&quot;&gt;
 login {{ rla.isActive ? &#39;激活&#39; : &#39;未激活&#39;}}
&lt;/a&gt;
Copy after login

If the current route is active, it will display: login activated

Inactive state

login Inactive

The above rla is the abbreviation of routerLinkActive, which can be defined at will.

Here comes the important point: You can use the RouterLinkActive directive on the parent element using the routerLink element

Is it troublesome to add styles to each route separately? Adding a route highlighting command to its parent element can solve the problem!

&lt;p routerLinkActive=&quot;red&quot; [routerLinkActiveOptions]=&quot;{exact: true}&quot;&gt;
 &lt;a routerLink=&quot;/user/login&quot;&gt;login&lt;/a&gt;
 &lt;a routerLink=&quot;/user/reset&quot;&gt;reset&lt;/a&gt;
&lt;/p&gt;
Copy after login

Just add routerLinkActive and routerLinkActiveOptions to the parent element p of the a tag. When the route is /user/login or /user/reset, the red style will be added to the dom element where it is located. What needs to be noted here is to add routerLinkActiveOptions to specify a complete match. Otherwise, when the url is user, both routes will be matched and the red style will be added.

More API usage is updated on github

I believe you have mastered the method after reading the case in this article. For more exciting information, please pay attention to other related articles on the PHP Chinese website!

Recommended reading:

Angular5 routing value transfer method summary

JS makes folding and unfolding animation (with code)

The above is the detailed content of Detailed explanation of the implementation steps of angular route highlighting. For more information, please follow other related articles on the PHP Chinese website!

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot Article Tags

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

How to make Google Maps the default map in iPhone How to make Google Maps the default map in iPhone Apr 17, 2024 pm 07:34 PM

How to make Google Maps the default map in iPhone

This Apple ID is not yet in use in the iTunes Store: Fix This Apple ID is not yet in use in the iTunes Store: Fix Jun 10, 2024 pm 05:42 PM

This Apple ID is not yet in use in the iTunes Store: Fix

Steps to upgrade to the latest version of WeChat (Easily master the upgrade method to the latest version of WeChat) Steps to upgrade to the latest version of WeChat (Easily master the upgrade method to the latest version of WeChat) Jun 01, 2024 pm 10:24 PM

Steps to upgrade to the latest version of WeChat (Easily master the upgrade method to the latest version of WeChat)

Detailed explanation of the steps to obtain Win11 system administrator permissions Detailed explanation of the steps to obtain Win11 system administrator permissions Mar 08, 2024 pm 09:09 PM

Detailed explanation of the steps to obtain Win11 system administrator permissions

Safari zoom issue on iPhone: Here's the fix Safari zoom issue on iPhone: Here's the fix Apr 20, 2024 am 08:08 AM

Safari zoom issue on iPhone: Here's the fix

Shazam app not working in iPhone: Fix Shazam app not working in iPhone: Fix Jun 08, 2024 pm 12:36 PM

Shazam app not working in iPhone: Fix

iPhone screenshots not working: How to fix it iPhone screenshots not working: How to fix it May 03, 2024 pm 09:16 PM

iPhone screenshots not working: How to fix it

How to implement dual WeChat login on Huawei mobile phones? How to implement dual WeChat login on Huawei mobile phones? Mar 24, 2024 am 11:27 AM

How to implement dual WeChat login on Huawei mobile phones?

See all articles