请考虑以下路由配置:
原文链接:https://www.f2er.com/angularjs/142279.htmlconst routes: Routes = [ { path: '',component: AppComponent,resolve: { app: AppResolver },children: [ { path: 'user/:uid',resolve: { user: UserResolver },children: [ { path: '',component: ViewUserComponent },{ path: 'edit',component: EditUserComponent } ] } ] } ];
UserResolver为route / user /:uid的任何子节点检索用户数据.
使用此数据,可以通过导航到/ user /:uid查看用户配置文件,然后通过导航到/ user /:uid / edit进行编辑.
成功编辑后,可能会重定向到用户的更新配置文件(/ user /:uid).
但是,视图和编辑页面都是已解析路径的子项,当从一个导航到另一个时,不会触发解析器.
因此,当从编辑组件导航回视图组件时,显示的数据仍然是旧的,未更新的数据.
是否有办法使已解析的用户数据无效以强制解析器再次从服务器获取它?或者还有其他方法来实现这种结果吗?
应用数据不变,我们不应该重新加载它.