Angular 6 - <a> href附加到基本URL

dal*_*ows 2 html angular6

我有一个显示在表中的用户列表,每个用户都有显示的链接,可以导航到.

<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的新标签页中打开

我错过了什么?

Tom*_*hut 9

根据应用程序的协议,始终//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视为相对,以方便应用内导航.

作为旁注,这种行为不是特定于角度的; 其他框架和普通网站的行为完全相同

  • 你能告诉我为什么会这样吗? (2认同)