On this page
RouterOutletContract
interface
An interface that defines the contract for developing a component outlet for the Router
.
interface RouterOutletContract {
isActivated: boolean
component: Object | null
activatedRouteData: Data
activatedRoute: ActivatedRoute | null
activateEvents?: EventEmitter<unknown>
deactivateEvents?: EventEmitter<unknown>
activateWith(activatedRoute: ActivatedRoute, resolver: ComponentFactoryResolver): void
deactivate(): void
detach(): ComponentRef<unknown>
attach(ref: ComponentRef<unknown>, activatedRoute: ActivatedRoute): void
}
Class implementations
See also
Description
An outlet acts as a placeholder that Angular dynamically fills based on the current router state.
A router outlet should register itself with the Router
via ChildrenOutletContexts#onChildOutletCreated
and unregister with ChildrenOutletContexts#onChildOutletDestroyed
. When the Router
identifies a matched Route
, it looks for a registered outlet in the ChildrenOutletContexts
and activates it.
Properties
Property | Description |
---|---|
isActivated: boolean |
Whether the given outlet is activated. An outlet is considered "activated" if it has an active component. |
component: Object | null |
The instance of the activated component or |
activatedRouteData: Data |
The |
activatedRoute: ActivatedRoute | null |
The |
activateEvents?: EventEmitter<unknown> |
Emits an activate event when a new component is instantiated |
deactivateEvents?: EventEmitter<unknown> |
Emits a deactivate event when a component is destroyed. |
Methods
activateWith()
|
||||||
---|---|---|---|---|---|---|
Called by the |
||||||
|
activatedRoute |
ActivatedRoute |
|
resolver |
ComponentFactoryResolver |
Returns
void
deactivate()
|
---|
A request to destroy the currently activated component. |
|
When a |
detach()
|
---|
Called when the |
This is similar to |
attach()
|
||||||
---|---|---|---|---|---|---|
Called when the |
||||||
|
ref |
ComponentRef |
|
activatedRoute |
ActivatedRoute |
Returns
void
© 2010–2021 Google, Inc.
Licensed under the Creative Commons Attribution License 4.0.
https://v12.angular.io/api/router/RouterOutletContract