我有一个显示在表中的用户列表,每个用户都有显示的链接,可以导航到.
<div class="inline-icon-text">
<small class="text-muted d-md-none mr-3">Link</small>
<a [attr.href]="candidate.url" target="_blank" [title]="candidate.url">
<i class="material-icons">open_in_new</i>
</a>
</div>
Run Code Online (Sandbox Code Playgroud)
问题是,当我检查链接元素时,它指向正确的地址,但点击后它会附加到app base url.
<a _ngcontent-c15="" target="_blank" href="www.test.sk" title="www.test.sk">...</a>
Run Code Online (Sandbox Code Playgroud)
点击后,它会在地址为localhost:4200/www.test.sk的新标签页中打开
我错过了什么?
根据应用程序的协议,始终//在http://OR的协议或快捷方式前面添加绝对外部链接https://.
<div class="inline-icon-text">
<small class="text-muted d-md-none mr-3">Link</small>
<a [attr.href]="'//' + candidate.url" target="_blank" [title]="candidate.url">
<i class="material-icons">open_in_new</i>
</a>
</div>
Run Code Online (Sandbox Code Playgroud)
浏览器默认将URL视为相对,以方便应用内导航.
作为旁注,这种行为不是特定于角度的; 其他框架和普通网站的行为完全相同