正在清理不安全 URL 值 javascript

sanitizing unsafe URL value javascript

Angular 2 最终版本。

我有我的 link 如下是指 href="javascript:;" 我的 link

我收到以下警告

WARNING: sanitizing unsafe URL value javascript:; (see http://g.co/ng/security#xss)

我需要 link 成为 javascript:;因为如果我将其设为“#”或“”,它会刷新页面。

我读过一些帖子,其中有人向 angular 人报告了这个问题,他们会解决它。感谢任何帮助。

在 pkozlowski-opensource 的帮助下完成

我认为你不想在这里欺骗消毒。如果您使用的 link 具有点击事件并且它不应该触发导航只是阻止事件的默认操作,例如:

<a (click)="$event.preventDefault(); doSth()"> or even shorter
<a (click)="!!doSth()">

参考post https://github.com/angular/angular/issues/11805#issuecomment-248840338

我只是删除了 href 并添加了一个点击事件,如下所示

<a (click)="!!navigateToUrl(urlVar)">..</a>

注意:'!!'防止触发 'href' 操作并防止页面刷新。 navigateToUrl 是我的 js 方法,我只是在做

if(urlVar){
window.location.href=urlVar
}

像魅力一样工作,没有警告等。