我移動第一應用需要用於導航可點擊表中的行,其通過ngClick與window.location.href土地重定向兩次
<tr ng-repeat="foo in bar" ng-click="go_to(foo.id)" >
解決()函數是在控制器範圍內定義如The go_to:
$scope.go_to = function (in_id) {
var url = "#details/" + in_id;
window.location.href = url;
};
而且#details通過ngRoute路由:
.when('/details/:id', {
templateUrl : 'foo.html',
controller : 'fooController'
})
的表 - 行很好地調用了go_to函數,但它在歷史記錄中重複兩次#details/x頁面,其中第一個命中是常量重定向到下一個,所以後退按鈕變得無用。 IE:假設我們有兩頁; Main和Sub,其中Main具有ng-click(go_to)功能。在單擊ng之前,瀏覽器歷史記錄看起來像[Main]。點擊後,它看起來像[Main,Sub,Sub]。反擊,無論次數如何,都會讓你着迷於Sub。
有沒有任何連貫的解釋爲什麼應用程序的行爲是這樣的?它的所有替代方案也非常歡迎
是否有任何不使用$ location服務的理由? – TMichel
是的。愚蠢顯然 – JonasR
不要太自己:)不管怎樣,歡迎來到SO! – TMichel