Angular路由参数默认值不起作用的问题
创始人
2024-10-28 01:00:34
0
  1. 使用 || 运算符:

在定义路由参数时,可以使用 || 运算符来给特定参数设置默认值。例如:

const routes: Routes = [ { path: 'user/:id', component: UserProfileComponent }, { path: 'user/:id/:name', component: UserProfileComponent }, { path: '**', redirectTo: 'home' } ];

在上述代码中,用户的 ID 和名称都是路由参数,默认情况下,如果未指定名称,名称将为空字符串。通过使用 || 运算符,我们可以将名称设置为“未知”,如下所示:

const routes: Routes = [ { path: 'user/:id', component: UserProfileComponent }, { path: 'user/:id/:name', component: UserProfileComponent, data: { name: 'unknown' || params.name } }, { path: '**', redirectTo: 'home' } ];

  1. 使用 ActivatedRoute:

我们还可以使用 ActivatedRoute 来获取当前路由参数并设置默认值。在组件中,我们可以注入 ActivatedRoute 并使用 Snapshot 获取当前参数。例如:

import { Component, OnInit } from '@angular/core'; import { ActivatedRoute } from '@angular/router';

@Component({ selector: 'app-user-profile', templateUrl: './user-profile.component.html', styleUrls: ['./user-profile.component.css'] }) export class UserProfileComponent implements OnInit {

id: string; name: string;

constructor(private route: ActivatedRoute) { }

ngOnInit() { this.id = this.route.snapshot.paramMap.get('id'); this.name = this.route.snapshot.paramMap.get('name') || 'unknown'; }

}

在上述代码中,ngOnInit() 方法获取当前路由参数,并将名称设置为“未知”,如果没有指定名称。这样就可以确保默认值始终起作用。

相关内容

热门资讯

热点讨论!花城棋舍插件安装,冰... 热点讨论!花城棋舍插件安装,冰球突破豪华版辅助,辅助教程(真的有挂)-哔哩哔哩;AI辅助机器人普及解...
实测分享!掌中乐游戏通用辅助器... 实测分享!掌中乐游戏通用辅助器,中至余干小程序辅助安装,技巧教程(有挂细节)-哔哩哔哩;致您一封信;...
辅助透视!大菠萝挂机辅助,正宗... 辅助透视!大菠萝挂机辅助,正宗牛总管辅助,系统教程(有挂实锤)-哔哩哔哩;大菠萝挂机辅助AI智能教程...
透视科技!潮友辅助开挂,爱来大... 透视科技!潮友辅助开挂,爱来大菠萝有挂吗,可靠技巧(有挂分析)-哔哩哔哩,爱来大菠萝有挂吗是用手机号...
分享个大家!玖天乐游辅助,欢乐... 分享个大家!玖天乐游辅助,欢乐情怀辅助挂,规律教程(有挂分享)-哔哩哔哩;亲真的是有正版授权,小编(...
透视规律!兴动互娱辅助工具免费... 透视规律!兴动互娱辅助工具免费,小程序牵手跑得有开挂吗,揭秘攻略(有挂辅助)-哔哩哔哩;小程序牵手跑...
玩家必看攻略!新上游辅助反杀,... 玩家必看攻略!新上游辅助反杀,哈糖大菠萝诀窍,系统教程(有挂辅助)-哔哩哔哩;1、点击下载安装,哈糖...
传递经验!约战武汉怎么辅助,新... 传递经验!约战武汉怎么辅助,新星游辅助软件免费版,AI教程(有挂技巧)-哔哩哔哩;1.新星游辅助软件...
透视模拟器!鄱阳翻精辅助下载,... 透视模拟器!鄱阳翻精辅助下载,微乐家乡app插件,AI教程(有挂技术)-哔哩哔哩;鄱阳翻精辅助下载是...
玩家必知教程!上饶窝龙辅助,聚... 玩家必知教程!上饶窝龙辅助,聚财app辅助,AA德州教程!(存在有挂)-哔哩哔哩;小薇(透视辅助)致...