Cookies concent notice

This site uses cookies from Google to deliver its services and to analyze traffic.
Learn more
Skip to main content
Say hello to Angular's future home!Check out Angular.devHome
/

TitleStrategy

Provides a strategy for setting the page title after a router navigation.

See more...

      
      abstract class TitleStrategy {
  abstract updateTitle(snapshot: RouterStateSnapshot): void
  buildTitle(snapshot: RouterStateSnapshot): string | undefined
  getResolvedTitleForRoute(snapshot: ActivatedRouteSnapshot)
}
    

See also

Provided in

  • 'root'

Description

The built-in implementation traverses the router state snapshot and finds the deepest primary outlet with title property. Given the Routes below, navigating to /base/child(popup:aux) would result in the document title being set to "child".

      
      [
  {path: 'base', title: 'base', children: [
    {path: 'child', title: 'child'},
  ],
  {path: 'aux', outlet: 'popup', title: 'popupTitle'}
]
    

This class can be used as a base class for custom title strategies. That is, you can create your own class that extends the TitleStrategy. Note that in the above example, the title from the named outlet is never used. However, a custom strategy might be implemented to incorporate titles in named outlets.

Methods

Performs the application title update.

      
      abstract updateTitle(snapshot: RouterStateSnapshot): void
    
Parameters
snapshot RouterStateSnapshot
Returns

void

      
      buildTitle(snapshot: RouterStateSnapshot): string | undefined
    
Parameters
snapshot RouterStateSnapshot
Returns

string | undefined: The title of the deepest primary route.

Given an ActivatedRouteSnapshot, returns the final value of the Route.title property, which can either be a static string or a resolved value.

      
      getResolvedTitleForRoute(snapshot: ActivatedRouteSnapshot)
    
Parameters
snapshot ActivatedRouteSnapshot