- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我研究了这个主题,发现 RouterReuseStrategy 是一个解决方案,但我不能使用 RouterReuse 如何在不使用 RouterReuse 解决方案的情况下防止破坏组件状态
请考虑投票,因为这将有助于获得答案。
//应用程序.module.ts
const appRoutes: Routes = [
{ path: 'registration', component: RegistrationComponent },
{ path: 'users', component: ListComponent },
{ path: '', component: HomeComponent },
{ path: '**', component: PageNotFoundComponent }
];
@NgModule({
declarations: [
AppComponent,
Capitalize,
FilterPipe,
ListComponent,
RegistrationComponent,
PageNotFoundComponent,
HomeComponent
],
imports: [
BrowserModule,
ReactiveFormsModule,
FormsModule,
RouterModule.forRoot(appRoutes)
],
providers: [],
bootstrap: [AppComponent]
})
export class AppModule { }
//app.component.html
<section class="container">
<nav class="navbar navbar-default">
<div class="container-fluid">
<div>
<a class="navbar-brand" routerLink="/">Brand</a>
</div>
<!-- Collect the nav links, forms, and other content for toggling -->
<div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
<ul class="nav navbar-nav">
<li><a routerLink="/">Home</a></li>
<li><a routerLink="/registration">Registration</a></li>
<li><a routerLink="/users">Users</a></li>
</ul>
</div>
</div>
</nav>
</section>
<router-outlet></router-outlet>
最佳答案
您可以将状态存储在某个级别上提供的服务中,该级别不会在路由上重新创建,例如在 AppModule 或 AppComponent 中。
此外,如果仅导航仅更改路线参数,但保持在同一路线上,则不会重新创建组件,因此您不会丢失状态。但这仅适用于特定用例。
关于angular - 防止在不使用 RouteReuseStrategy 的情况下破坏路由上的组件状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46630630/
我正在尝试实现自定义 RouteReuseStrategy。 this answer 等资源在理解正在发生的事情方面非常宝贵,但我发现自己陷入了困境: 我的策略依赖于我的一项服务,该服务用于了解用户是
Angular RouteReuseStrategy 滚动位置错误。 当我从另一个页面返回列表页面时,滚动条回到顶部 import {ActivatedRouteSnapshot, DetachedR
这是我懒加载的子模块: @NgModule({ imports: [ CommonModule, RouterModule.forChild(acnpRoutes), ..
有没有办法只为特定路由实现RouteReuseStrategy? 这意味着每个路由都有子级,获得其自己的 RouteReuseStrategy 自定义实现,并且其方法仅在特定“树”中的路由被激活时触发
我研究了这个主题,发现 RouterReuseStrategy 是一个解决方案,但我不能使用 RouterReuse 如何在不使用 RouterReuse 解决方案的情况下防止破坏组件状态 请考虑投票
我的应用程序有 RouterReuseStrategy,如下所示 import { RouteReuseStrategy, ActivatedRouteSnapshot, De
关于我的应用程序(Angular 12)的信息: 由 3 个模块组成,每个模块都有一个带有列表的概览页面和一些详细信息页面 每条路线都有一个区域标签,所以我知道用户在哪个模块中导航 所以我想为以下行为
我实现了RouteReuseStrategy建议here并且还更新了一点,因为在 shouldAttach 上 routeConfig.path 是空的,处理程序没有被缓存。我有 @angular/r
我只想对一个模块使用这个自定义路由重用策略: export class CustomRouteReuseStrategy extends RouteReuseStrategy { public
我正在尝试利用自定义 RouteReuseStrategy为此,我想在组件分离时暂停任何订阅,以及滚动到正确位置等其他事情。 我检查了可能的钩子(Hook),但显然没有额外的 lifecycle ho
在我的 Angular 4 应用程序中,我使用了 RouteReuseStrategy 来存储路线。 我的应用程序由于这个存储路由而导致内存泄漏太多,因为当我移动到其他路由时它没有调用 ngOnDes
我有一个组件 MainPageComponent。当用户从顶部菜单中单击“主页”时,我的自定义 RouteReuseStrategy 会从内存中恢复“主页”- 路由,用户从他离开的地方选择。我如何才能
我有一个 Angular 2 模块,我在其中实现了路由,并希望在导航时存储状态。 用户应该能够: 使用“搜索公式”搜索文档 导航到结果之一 导航回“搜索结果” - 不与服务器通信 这是可能的,包括 R
我是一名优秀的程序员,十分优秀!