gpt4 book ai didi

javascript - Angular 2+ 中的 Angular 粘性状态

转载 作者:行者123 更新时间:2023-11-30 15:05:12 26 4
gpt4 key购买 nike

我正在将 Angular 1.5.X 应用程序迁移到 Angular 4。在我的应用程序中,我使用 Angular Ui-Router Sticky State https://github.com/ui-router/sticky-states为了避免在我的应用程序的某些 View 中进行导航时丢失我的 View 内容,但是当我尝试在 ng-router2 中使用此功能时,我找不到它。 https://ui-router.github.io/ng2/tutorial/helloworld .

有些人知道一些路由器与 Angular2+ 中的 Sticky State 具有类似的功能,或者使用 ui-router-ng2 来模拟 Sticky State。

最佳答案

我在互联网上找到了这个答案,我不记得是在哪个网站上,但解决方案不是我的。

import { Injectable } from '@angular/core';

import { Router, CanActivate, ActivatedRouteSnapshot, RouterStateSnapshot, RouteReuseStrategy, DetachedRouteHandle, Route} from '@angular/router';

@Injectable()
export class ArchReuseStrategyService implements RouteReuseStrategy {

handlers: {[key: string]: DetachedRouteHandle} = {};

/** Determine if should detach the route */
shouldDetach(route: ActivatedRouteSnapshot): boolean {
console.log('CustomReuseStrategy:shouldDetach', route);
return (route.routeConfig.sticky === true) ? true : false;
// Or return true;
}
/** Store the route */
store(route: ActivatedRouteSnapshot, handle: DetachedRouteHandle): void {
console.log('CustomReuseStrategy:store', route, handle);
this.handlers[route.routeConfig.path] = handle;
}
/** Determina si la ruta y su subrutas deberian poder ser recuperadas */
shouldAttach(route: ActivatedRouteSnapshot): boolean {
console.log('CustomReuseStrategy:shouldAttach', route);
return !!route.routeConfig && !!this.handlers[route.routeConfig.path];
}
/** Recover a store route*/
retrieve(route: ActivatedRouteSnapshot): DetachedRouteHandle {
console.log('CustomReuseStrategy:retrieve', route);
if (!route.routeConfig) return null;
return this.handlers[route.routeConfig.path];
}
/** Determine if the route should be reused*/
shouldReuseRoute(future: ActivatedRouteSnapshot, curr: ActivatedRouteSnapshot): boolean {
console.log('CustomReuseStrategy:shouldReuseRoute', future, curr);
return future.routeConfig === curr.routeConfig;
}
}

关于javascript - Angular 2+ 中的 Angular 粘性状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45878698/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com