首先,问题: 我有一个项目的概述,我想在点击项目时被定向到详细信息页面。到目前为止一切顺利,路径有效,但不知何故,我的代码一直在指导并删除链接的哈希值。我的浏览器(谷歌浏览器)告诉我“当时没有找到对象”。
路由代码:
.when('/home/:category/', {
title: "Home",
name: "home",
templateUrl: './templates/frontend_home.php',
controller: "SearchListCtrl"
})
.when('/detail/:id', {
title: "Detailansicht",
name: "detail",
controller: "DetailController",
templateUrl: "./templates/frontend_detail.php"
})
我有<tr>
的ng-repeat,它链接到详细视图,如:
<tr ng-repeat="data in responseData | limitTo:limit" ng-click="showDetail(data.id)">
SearchListCtrl
中的代码:
$scope.showDetail = function(detailId){
console.log("showDetail");
$location.path('/detail/' + detailId);
}
DetailController
:
lmsApp.controller('DetailController', function ($scope, $routeParams, $http){
$scope.$on("$routeChangeSuccess", function(evt, absNewUrl, absOldUrl){
console.log(absOldUrl);
console.log(absNewUrl);
});
var ajax=$http.post("./includes/ajax_getDetailInformation.php", {"id": $routeParams["id"]});
ajax.success(function(data, status, headers, config) {
$scope.object=data[0];
});
ajax.error(function(data, status, headers, config){
console.log("Ajax failed");
});
});
所以,首先链接如下:
http://localhost/Diplomarbeit/lms_project/#/detail/168?query=violine
然后(自动)得到类似的东西:
http://localhost/Diplomarbeit/lms_project/detail/168
我试图用$ location.url($ location.path())删除搜索查询;在更改路径之前,它不会进行更改。
我可以看到历史记录中的第一个(工作)链接,但为什么它会继续重定向?
我很感激每一个答案。 映入眼帘, Force0234