{ "id": "api/router/RouteReuseStrategy", "title": "RouteReuseStrategy", "contents": "\n\n
\n
\n
\n \n API > @angular/router\n
\n \n
\n \n
\n

RouteReuseStrategylink

\n \n \n \n \n \n
\n \n \n\n
\n \n
\n

Provides a way to customize when activated routes get reused.

\n\n \n
\n \n \n \n
\n\nabstract class RouteReuseStrategy {\n abstract shouldDetach(route: ActivatedRouteSnapshot): boolean\n abstract store(route: ActivatedRouteSnapshot, handle: DetachedRouteHandle): void\n abstract shouldAttach(route: ActivatedRouteSnapshot): boolean\n abstract retrieve(route: ActivatedRouteSnapshot): DetachedRouteHandle | null\n abstract shouldReuseRoute(future: ActivatedRouteSnapshot, curr: ActivatedRouteSnapshot): boolean\n}\n\n\n \n \n
\n

Subclasseslink

\n \n\n\n\n\n
\n \n\n
\n\n\n \n\n \n \n \n\n\n\n\n\n\n\n\n\n\n\n\n
\n

Methodslink

\n \n \n\n \n \n \n \n \n \n \n \n \n \n\n \n\n \n \n
\n
\n

\n shouldDetach()\n \n link

\n \n
\n
\n

Determines if this route (and its subtree) should be detached to be reused later

\n\n
\n
\n \n\n abstract shouldDetach(route: ActivatedRouteSnapshot): boolean\n\n \n\n
Parameters
\n \n \n \n \n \n \n \n \n \n
\n \n route\n ActivatedRouteSnapshot\n \n \n
\n\n \n
Returns
\n

boolean

\n\n \n\n\n \n\n \n
\n
\n\n \n \n\n \n \n \n \n \n \n \n \n \n \n\n \n \n \n\n \n \n
\n
\n

\n store()\n \n link

\n \n
\n
\n

Stores the detached route.

\n\n
\n
\n \n\n abstract store(route: ActivatedRouteSnapshot, handle: DetachedRouteHandle): void\n\n \n\n
Parameters
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n \n route\n ActivatedRouteSnapshot\n \n \n
\n \n handle\n DetachedRouteHandle\n \n \n
\n\n \n
Returns
\n

void

\n\n \n\n\n \n\n \n
\n
\n

Storing a null value should erase the previously stored value.

\n\n
\n\n \n \n\n \n \n \n \n \n \n \n \n \n \n\n \n\n \n \n
\n
\n

\n shouldAttach()\n \n link

\n \n
\n
\n

Determines if this route (and its subtree) should be reattached

\n\n
\n
\n \n\n abstract shouldAttach(route: ActivatedRouteSnapshot): boolean\n\n \n\n
Parameters
\n \n \n \n \n \n \n \n \n \n
\n \n route\n ActivatedRouteSnapshot\n \n \n
\n\n \n
Returns
\n

boolean

\n\n \n\n\n \n\n \n
\n
\n\n \n \n\n \n \n \n \n \n \n \n \n \n \n\n \n\n \n \n
\n
\n

\n retrieve()\n \n link

\n \n
\n
\n

Retrieves the previously stored route

\n\n
\n
\n \n\n abstract retrieve(route: ActivatedRouteSnapshot): DetachedRouteHandle | null\n\n \n\n
Parameters
\n \n \n \n \n \n \n \n \n \n
\n \n route\n ActivatedRouteSnapshot\n \n \n
\n\n \n
Returns
\n

DetachedRouteHandle | null

\n\n \n\n\n \n\n \n
\n
\n\n \n \n\n \n \n \n \n \n \n \n \n \n \n\n \n\n \n \n
\n
\n

\n shouldReuseRoute()\n \n link

\n \n
\n
\n

Determines if a route should be reused

\n\n
\n
\n \n\n abstract shouldReuseRoute(future: ActivatedRouteSnapshot, curr: ActivatedRouteSnapshot): boolean\n\n \n\n
Parameters
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n \n future\n ActivatedRouteSnapshot\n \n \n
\n \n curr\n ActivatedRouteSnapshot\n \n \n
\n\n \n
Returns
\n

boolean

\n\n \n\n\n \n\n \n
\n
\n\n \n
\n\n\n\n \n\n\n
\n
\n\n\n" }