RouterModule
Adds directives and providers for in-app navigation among views defined in an application.
Use the Angular Router
service to declaratively specify application states and manage state
transitions.
class RouterModule {
static forRoot(routes: Routes, config?: ExtraOptions): ModuleWithProviders<RouterModule>
static forChild(routes: Routes): ModuleWithProviders<RouterModule>
}
See also
Routing and Navigation guide for an overview of how the
Router
service should be used.
Description
You can import this NgModule multiple times, once for each lazy-loaded bundle.
However, only one Router
service can be active.
To ensure this, there are two ways to register routes when importing this module:
Static methods
forRoot() | ||||||
---|---|---|---|---|---|---|
Creates and configures a module with all the router providers and directives. Optionally sets up an application listener to perform an initial navigation. |
||||||
Parameters
Returns
|
||||||
When registering the NgModule at the root, import as follows:
|
forChild() | |||
---|---|---|---|
Creates a module with all the router directives and a provider registering routes, without creating a new Router service. When registering for submodules and lazy-loaded submodules, create the NgModule as follows: |
|||
Parameters
Returns
|
|||
|
Directives
Name | Description |
---|---|
|
When applied to an element in a template, makes that element a link
that initiates navigation to a route. Navigation opens one or more routed components
in one or more |
|
Tracks whether the linked route of an element is currently active, and allows you to specify one or more CSS classes to add to the element when the linked route is active. |
|
When applied to an element in a template, makes that element a link
that initiates navigation to a route. Navigation opens one or more routed components
in one or more |
|
Acts as a placeholder that Angular dynamically fills based on the current router state. |