首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >带圆括号的角查询参数?

带圆括号的角查询参数?
EN

Stack Overflow用户
提问于 2021-10-17 23:08:13
回答 2查看 376关注 0票数 0

我有一个简单的角应用程序,它使用来自路由器的查询参数,如下所示:

代码语言:javascript
复制
const routes: Routes = [{
  path: '',
  component: DefaultComponent
},
{
  path: ':uname',
  component: ProductDisplayComponent
}];

这很好,我可以访问‘产品’"uname“,如下所示:

代码语言:javascript
复制
let prodId = params.get('uname')

问题是,一些"uname“值是数字,有些是带括号的数字,例如"567(B)”。

如果" uname“只是一个数字,那么一切都很好,但是一旦括号在uname中,应用程序就会重定向到"/”。

当"unmae“有括号时,是否有得到值?

谢谢,

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2021-10-20 17:23:38

基于下面的报告:github.com/ar角/ar角/issues/10280,这是我最初发布的解决问题的方法。

  1. 创建一个新类,如下所示:

从“@ UrlSerializer /路由器”导入{ UrlTree、UrlTree、UrlSegment、DefaultUrlSerializer };导出类CustomUrlSerializer实现UrlSerializer {CustomUrlSerializer=新DefaultUrlSerializer();解析( url : any):UrlTree{url= url.replace(/(/g,'%28').replace(/)/g,'%29');返回this.dus.parse(url) }序列化(tree: UrlTree):任何{返回this.dus.serialize(树).replace(/%28/g,'(').replace(/%29/g,')');}

  1. in "app.modules.ts“(或您的模块文件是什么)向提供程序添加以下内容:

提供者: MyOtherServices,{ providers: UrlSerializer,useClass: CustomUrlSerializer },

更.

祝好运

票数 0
EN

Stack Overflow用户

发布于 2021-10-18 01:38:13

因为括号有一个特殊的含义,所以我做了一些额外的处理,但是我会给出一个很有意义的例子

代码语言:javascript
复制
   {
      path: 'd', component: DComponent,
      children:[
        {path: 'c', component: CComponent},
        {path: 'a', component: AComponent,outlet:'right'},

      ]
    },
    this.router.navigateByUrl('/home/d/(c//right:a)')

它主要用作二次通道出口。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69609238

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档