Angular路由在路由中添加%2F而不是斜杠
创始人
2024-10-28 05:31:01
0

问题描述:在Angular路由中使用斜杠(/)时,会自动转义为%2F。

解决方法: 在Angular路由的配置文件中,可以使用encodeURIComponent()方法将斜杠(/)转义为%2F。

示例代码:

app-routing.module.ts

import { NgModule } from '@angular/core';
import { Routes, RouterModule } from '@angular/router';

import { HomeComponent } from './home/home.component';
import { AboutComponent } from './about/about.component';

const routes: Routes = [
  { path: '', component: HomeComponent },
  { path: 'about/:param', component: AboutComponent },
];

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

about.component.ts

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

@Component({
  selector: 'app-about',
  templateUrl: './about.component.html',
  styleUrls: ['./about.component.css']
})
export class AboutComponent implements OnInit {
  param: string;

  constructor(private route: ActivatedRoute) { }

  ngOnInit() {
    this.route.params.subscribe(params => {
      this.param = params['param'];
    });
  }

}

about.component.html

Param: {{ param }}

在上述示例代码中,路由配置文件app-routing.module.ts中的about路由使用了参数:param。当在浏览器地址栏中输入/about/test时,Angular会将/test作为参数传递给about组件,并显示在about.component.html中。

如果参数中包含斜杠(/),例如/about/test/path,Angular会将斜杠转义为%2F,即/about/test%2Fpath。在about组件中,可以使用decodeURIComponent()方法将%2F转义回斜杠。

about.component.ts

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

@Component({
  selector: 'app-about',
  templateUrl: './about.component.html',
  styleUrls: ['./about.component.css']
})
export class AboutComponent implements OnInit {
  param: string;

  constructor(private route: ActivatedRoute) { }

  ngOnInit() {
    this.route.params.subscribe(params => {
      this.param = decodeURIComponent(params['param']);
    });
  }

}

这样,当在浏览器地址栏中输入/about/test%2Fpath时,Angular会将/test%2Fpath作为参数传递给about组件,并显示在about.component.html中的param变量中,此时param的值为test/path。

相关内容

热门资讯

透视辅助!wepoker私人局... 透视辅助!wepoker私人局俱乐部辅助,wepoker私人局辅助器怎么用(透视)新版2025教程(...
透视有挂!wepoker透视方... 透视有挂!wepoker透视方法,wepoker私人局透视方法(透视)攻略教程(有挂解密)1、任何w...
透视了解!wepoker永久免... 透视了解!wepoker永久免费脚本,wepoker插件辅助(透视)必备教程(有挂插件);1)wep...
透视系统!wepokerplu... 透视系统!wepokerplus脚本,wepoker底牌透视脚本(透视)解说技巧(有挂方法)1)we...
透视辅助!wepoker有辅助... 透视辅助!wepoker有辅助器吗,wepoker有透视底牌吗(透视)大神讲解(有挂插件)1、首先打...
透视真的!wepoker-h5... 透视真的!wepoker-h5下载,wepoker私局代打(透视)科技教程(有挂攻略);1)wepo...
透视透视!wepoker插件辅... 透视透视!wepoker插件辅助,we poker游戏下(透视)可靠技巧(有挂教程);1、wepok...
透视有挂!wepoker破解游... 透视有挂!wepoker破解游戏盒子,wepoker怎么看底牌(透视)黑科技教程(有挂细节)1、打开...
透视科技!wepoker免费辅... 透视科技!wepoker免费辅助器,wepoker有透视功能吗(透视)靠谱教程(有挂技巧);1、we...
透视计算!wepoker辅助器... 透视计算!wepoker辅助器最新版本更新内容,wepoker有没有机器人(透视)黑科技教程(有挂细...