想要在Angular 2中路由时阻止组件重新创建

pd *_*had 12 angular2-routing angular2-router3 angular

比方说,我们有两个途径DashboardProfile.Dashboard有动态标签功能Google spreadsheet.我想做一些交互(构建图表,可视化一些数据)创建标签Dashboard.现在,如果我路由到Profile然后路由回去Dashboard,我想看看之前在那些标签中的内容Dashboard.这意味着,我想在客户端保持状态.AFAIK在组件之间进行路由时,会重新创建组件.是否可以在使用角度2路由时制作类似应用程序的电子表格?我需要使用路由,因为在我的应用程序中我必须使用LazyLoading功能.

那么这个想法应该是什么?我是角度2的新手.

Gün*_*uer 14

目前,只有当路由参数在停留在同一路线上时才会重新使用组件.

如果路由已更改,则新路由添加相同组件时的事件将重新创建组件.

首选的解决方法是将模型保留在路由更改期间保持活动的共享服务中,并使用此服务中的数据来还原组件的先前状态.

有人提到有计划支持路由器的自定义重用策略,但没有时间表可以使用.

更新

Angular2增加了对自定义重用策略的支持.

也可以看看

  • 您也可以使用自定义组件替换`<router-outlet>`组件,该组件不会删除特定组件,而只是隐藏它们. (4认同)