Angular路由器:为什么Router ActivatedRoute.children是一个数组/始终只有一个子级?
创始人
2024-10-28 04:30:15
0

在Angular中,当使用路由器进行导航时,可以使用ActivatedRoute来访问当前路由的信息,包括路由参数、查询参数等。而ActivatedRoute对象的children属性是一个包含当前路由的子路由的数组。

通常情况下,ActivatedRoute.children数组只有一个子级,这是因为路由配置中定义了一个子路由。如果路由配置中没有定义子路由,children数组将为空。但是,ActivatedRoute.children始终是一个数组,即使只有一个子级。

以下是一个示例来解释为什么ActivatedRoute.children是一个数组/始终只有一个子级的原因:

// app.module.ts
import { NgModule } from '@angular/core';
import { RouterModule, Routes } from '@angular/router';
import { AppComponent } from './app.component';
import { HomeComponent } from './home.component';
import { AboutComponent } from './about.component';

const routes: Routes = [
  { path: '', component: HomeComponent },
  { path: 'about', component: AboutComponent, children: [
    { path: 'child', component: ChildComponent }
  ]},
];

@NgModule({
  imports: [RouterModule.forRoot(routes)],
  exports: [RouterModule]
})
export class AppModule { }

// about.component.ts
import { Component } from '@angular/core';
import { ActivatedRoute } from '@angular/router';

@Component({
  selector: 'app-about',
  template: `
    

About Page

` }) export class AboutComponent { constructor(private route: ActivatedRoute) { console.log(route.children); // [ActivatedRoute] } } // child.component.ts import { Component } from '@angular/core'; import { ActivatedRoute } from '@angular/router'; @Component({ selector: 'app-child', template: `

Child Page

` }) export class ChildComponent { constructor(private route: ActivatedRoute) { console.log(route.children); // [] } }

在上面的示例中,我们定义了一个父级路由about和一个子级路由child。当访问/about时,AboutComponent会被加载,并且route.children将包含一个ActivatedRoute对象。而当访问/about/child时,ChildComponent会被加载,并且route.children将为空数组。

通过以上示例,你可以看到ActivatedRoute.children是一个数组,即使只有一个子级。你可以通过访问route.children[0]来获取子级的ActivatedRoute对象。

相关内容

热门资讯

推荐几款新版!填大坑辅助器通用... 推荐几款新版!填大坑辅助器通用版(透明挂)好像是有挂(2020已更新)(哔哩哔哩);1、每一步都需要...
微扑克辅助机器人!微扑克到底有... 微扑克辅助机器人!微扑克到底有辅助器,微扑克系统发牌规律,安装教程(有挂解说)1、金币登录送、破产送...
wepower辅助器!wepo... wepower辅助器!wepoke软件机器人,德州wepower有外 挂,高科技教程(有挂黑科技);...
九分钟辅助挂!土豆棋牌贵州麻将... 九分钟辅助挂!土豆棋牌贵州麻将有挂,德州扑克竟然有挂,细节方法(有挂规律)1、上手简单,内置详细流程...
必看攻略!快玩炸翻天有外 挂吗... 必看攻略!快玩炸翻天有外 挂吗(透明挂)一贯是有挂(2021已更新)(哔哩哔哩);1、完成快玩炸翻天...
微扑克德州专用辅助器!微扑克专... 微扑克德州专用辅助器!微扑克专用辅助器,微扑克后台能控制胜率,新2025教程(有挂软件)1)微扑克辅...
wepokeai代打!wepo... WePoker透视辅助版本解析‌,wepokeai代打!wepoke有挂,wepoke有玄学,系统教...
8分钟辅助!天天摸麻将有挂吗,... 8分钟辅助!天天摸麻将有挂吗,wePOKE一贯存在有挂,攻略教程(有挂辅助挂)1、玩家可以在天天摸麻...
分享一款!财神13张刷低胜率(... 分享一款!财神13张刷低胜率(辅助挂)本来有挂(2021已更新)(哔哩哔哩)该软件可以轻松地帮助玩家...
微扑克游戏辅助器!微扑克辅助哪... 微扑克游戏辅助器!微扑克辅助哪里有卖,微扑克规律,解密教程(有挂揭秘)1、用户打开应用后不用登录就可...