在Angular路由配置中,可以设置onSameUrlNavigation属性为'reload',这样当URL相同但参数变化时,会重新加载组件。 typescript @NgModule({ imports: [ RouterModule.forRoot(routes, { onSameUrlNavigation: 'reload' }) ], exports: [RouterModule] }) export class AppRoutingModule { } 监听NavigationEnd事件: 可以...
有两个值'reload'和'ignore'。默认为'ignore' 定义当路由器收到一个导航到当前 URL 的请求时应该怎么做。 默认情况下,路由器将会忽略这次导航。但这样会阻止类似于 "刷新" 按钮的特性。 使用该选项可以配置导航到当前 URL 时的行为。 使用 配置onSameUrlNavigation @NgModule({ imports: [Router...
onSameUrlNavigation的配置有2个可选值,'ignore' 和 'reload'。默认ignore,当路由请求被要求导航到当前的活动路由中时页面是不会reload的,因此不会发生任何改变的。我们希望的是reload,因此需要手动配置它的值为'reload'; const routes: Route[] = [...]; @ngModule({ imports: [RouterModule.forRoot(routes,...
onSameUrlNavigation有两个可选值:‘reload’和’ignore’,默认为’ignore’。但仅将onSameUrlNavigation改为’reload’,只会触发RouterEvent事件,页面是不会重新加载的,还需配合其它方法。在继续之前,我们启用Router Trace,从浏览器控制台查看一下路由事件日志: @NgModule({ imports: [RouterModule.forRoot(routes, {...
稍加阅读后,我明白了我需要将onSameUrlNavigation设置为“reload”,并捕获组件中的事件并刷新其中的数据。虽然我知道这是最好的解决方案,并且不需要重新创建组件,但我正在尝试为我的所有路由找到一些快速修复,而不是编写大量代码来支持此行为。有没有办法强制销毁所有组件,并在新路由与当前路由匹配时重新创建? 浏览1...
'reload':路由器会重新加载当前 URL。用来实现"刷新"功能。 app.routeing.module.ts //imports: [RouterModule.forRoot(routes)],imports: [RouterModule.forRoot(routes,{onSameUrlNavigation:'reload',//enableTracing:true 用来测试,监测路由变化})],
定义当路由器收到⼀个导航到当前 URL 的请求时应该怎么做。默认情况下,路由器将会忽略这次导航。但这样会阻⽌类似于"刷新" 按钮的特性。使⽤该选项可以配置导航到当前 URL 时的⾏为。使⽤ 配置onSameUrlNavigation @NgModule({ imports: [RouterModule.forRoot(routes,{ onSameUrlNavigation: 'reload' }...
在路由器配置中,启用onSameUrlNavigation选项,将其设置为reload。当您尝试导航到已处于活动状态的路由时,这会导致路由器触发一个事件周期。 代码语言:javascript 运行 AI代码解释 @ngModule({ imports: [RouterModule.forRoot(routes, {onSameUrlNavigation: 'reload'})], exports: [RouterModule], }) 在路由定义中...
RouterModule.forRoot(AppRoutes, { relativeLinkResolution: 'legacy', onSameUrlNavigation: 'reload' }) ] pages.routing.ts export const PagesRoutes: Routes = [{ path: '', component: FullComponent, children: [ { path: 'dashboard1', component: Dashboard1Component, ...
this.router.onSameUrlNavigation = 'reload'; this.router.navigateByUrl(this.router.url).then(() => { this.router.onSameUrlNavigation = 'ignore'; });如果有使用resolve, 在Routes里面可以加上如下:runGuardsAndResolvers: 'always'有用 回复 ...