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() 方法获取当前路由参数,并将名称设置为“未知”,如果没有指定名称。这样就可以确保默认值始终起作用。

相关内容

热门资讯

透视游戏!aapkoer德州辅... 1、透视游戏!aapkoer德州辅助挂下载,贪吃蛇辅助器2022,存在挂教程(有挂技巧)。2、贪吃蛇...
分享个大家!pokermast... 分享个大家!pokermaster有德州吗,we辅助poker德之星,解密教程(固有存在有挂)1、金...
透视计算!德朴之星脚本,闲逸辅... 透视计算!德朴之星脚本,闲逸辅助器下载,玩家教你(有挂技巧)1、玩家可以在闲逸辅助器下载软件透明挂俱...
推荐一款!wepoke有假吗,... 推荐一款!wepoke有假吗,德扑之星有作弊,分享教程(真是真的是有挂)1)德扑之星有作弊辅助挂:进...
玩家必备科普!wpk俱乐部外挂... 玩家必备科普!wpk俱乐部外挂,智星德州菠萝偷偷看牌功能,新2025版(起初真的是有挂)1、智星德州...
透视app!wpk透视脚本视频... 透视app!wpk透视脚本视频,四川熊猫辅助官网,安装教程(有挂软件);人气非常高,ai更新快且高清...
信息共享!微扑克辅助神器,wp... 信息共享!微扑克辅助神器,wpk ai辅助,科技教程(最初是有挂);无聊就玩这款wpk ai辅助真的...
透视规律!aapoker透视插... 透视规律!aapoker透视插件下载,欢乐对决辅助菜单,必备教程(有挂神器);玩家必备必赢加哟《13...
我来教大家!wepoke 软件... 我来教大家!wepoke 软件,aapoker外挂,新2025教程(总是是有挂)1、aapoker外...
透视黑科技!红龙poker作弊... 透视黑科技!红龙poker作弊指令,闲来山水广西辅助,透明教程(有挂透视),支持语音通讯、好友开房及...