12

目前我正在以这种方式处理链接:

<a ng-click="goToLink('/foo')">foo</a>

$scope.goToLink = function(url) {
    $location.path(url)
}

因为如果我这样做

<a ng-href="/foo">foo</a> 

该页面当然会重新加载(并获得 404),因为它应该类似于:

<a ng-href="#/foo">foo</a>

是否有指令或其他东西来定义“与 html5 模式无关”的链接,这样我就不必在每个链接中都添加主题标签?

就像是

<a ng-smart-href="/foo">foo</a>.
4

2 回答 2

5

检查 ng-href,这正是您要寻找的。 http://docs.angularjs.org/api/ng.directive:ngHref

检查来自http://docs.angularjs.org/guide/dev_guide.services.$location的“相对链接”示例

于 2013-01-25T14:13:01.273 回答
0

在 HTML5 模式下,<a href="/foo">link to foo</a>如果在旧版浏览器中,将重写为 hash-bang 模式:

请参阅有关此的文档:使用 $location,Html 链接重写

于 2014-06-24T16:58:23.767 回答