无法使用 href 或 ng-href 转到外部网址

Can't go to external urls using either href or ng-href

我正在尝试使用 AngularJS 将用户带到外部网站的动态 URL。但是,link 在单击时将用户带到我页面上的路由。

例如,如果我的 url 是 "mysite.com",而我的 link 是 "google.com"。如果我使用 hrefng-href 单击此 link,它会将我带到我网站上不存在的路径:"mysite.com/google.com"

如何导航到外部 URLs?

我的代码示例:

<a href="{{ linkItem.link }}" target="_blank">View file</a>

linkItem.link 是 "google.com"。这对于任何网页都无法正常工作,即使对于具有硬编码 href 属性的网页也是如此。

问题是由于 URL 中没有前缀协议(即 http://https://)导致的,这使得浏览器认为它是相对路径。有两种修复方法:

  1. 要求用户输入以http://https://开头的有效URL。

  2. 创建一个过滤器或指令,在前缀缺失时添加前缀。