【问题标题】:angular2 routing not working because of slash in route parameters data由于路由参数数据中的斜线,angular2路由不起作用
【发布时间】:2016-12-31 12:20:53
【问题描述】:

请帮帮我。

我正在尝试在路由中传递参数。但是当我的参数值有斜线符号时,斜线后面的文本是另一个参数,所以我的路由不起作用。

{ 路径:'resetpassword/:code',组件:ResetPasswordComponent}

code 值是一些加密数据,所以算法生成的数据有一些斜线。

【问题讨论】:

  • 你能贴出你用来调用组件的代码吗?或者您是否试图通过导航到 xyz/resetpassword/some/value/with/slashes 从应用程序外部调用它?
  • @Swetha 我遇到了同样的问题。你找到解决办法了吗?
  • 同样的问题有什么好的解决办法吗?

标签: angular routing slash


【解决方案1】:

您需要以某种方式对您的有效负载进行编码。尝试 JavaScript 的 encodeURIComponent()/decodeURIComponent()Base58 (https://github.com/cryptocoinjs/bs58)。

JavaScript 的 encodeURI()/decodeURI() 不起作用,因为它不编码斜杠。

显然,您总是可以自己用其他字符替换斜线。但是我发现使用适当的编码机制是一种更健壮和可维护的方法。

【讨论】:

    猜你喜欢
    • 2017-12-03
    • 1970-01-01
    • 2013-06-29
    • 1970-01-01
    • 2016-08-21
    • 1970-01-01
    • 2016-03-27
    • 2017-04-17
    • 1970-01-01
    相关资源
    最近更新 更多