Javascript 角度插值{{}在url参数中,是否有方法清理url?
我们有一个边缘案例问题,外部应用程序需要在我们网站的url请求中提供特定的url参数:Javascript 角度插值{{}在url参数中,是否有方法清理url?,javascript,angularjs,angular1.6,Javascript,Angularjs,Angular1.6,我们有一个边缘案例问题,外部应用程序需要在我们网站的url请求中提供特定的url参数: https://stackoverflow.com/questions/ask?abc=123 以下是一个屏幕截图: 有时,url参数无法正确呈现,导致url变为: https://stackoverflow.com/questions/ask?abc={{} 我们的应用程序运行angular,它无法解析它,从而导致网页出现不必要的错误 angular是否有办法在url进入应用程序之前对其进行编码? 细节
https://stackoverflow.com/questions/ask?abc=123
以下是一个屏幕截图:
有时,url参数无法正确呈现,导致url变为:
https://stackoverflow.com/questions/ask?abc={{}
我们的应用程序运行angular,它无法解析它,从而导致网页出现不必要的错误
angular是否有办法在url进入应用程序之前对其进行编码?
细节
- 角度1.6.6
nginx
重定向解决方案,但相信如果我们解决了问题的根源,它会更好
我们已经阅读了很多关于更改模板标记的内容,但这是一个巨大的修复
预期
我们不使用任何自定义url变量。我们希望它在不解析
https://stackoverflow.com/questions/ask?abc={{}
您需要绑定[queryParams]=“{'abc':'test'}”中的参数
由于需要传递对象,因此可以在typescript中动态创建对象
试着这样做:
HTML:
<a [routerLink]="['https://stackoverflow.com/questions/ask']" [queryParams]="getQueryParam()">Link</a>
getQueryParam() {
var queryParam = {};
queryParam['abc'] = this.some_variable;
return queryParam;
}
问题可能与此有关:
也就是说,这是一个已知的角度问题。经过研究,我们发现Drupal呈现形式使用了一个名为request_uri()的函数,该函数不编码输出。因此,操作url在页面上加载时会导致角度错误
我们找到的解决方案是添加重定向。使用
ng href
这将仅在解析字符串后放置href。您是否使用AngularJS或AngularJS?你把两个标签都放在你的问题上,但它们是不同的框架,有不同的指令。此外,如果您将HTML代码发布到链接所在的位置,也会很容易得到帮助is@VirgilioGM我用一些截图、标签和更多细节更新了这个问题。我们目前正在使用Angular1.6。这个解决方案适用于angular,但问题是关于AngularJS的。