私はangularJSを新しくしました。私はangularjsを使ってウェブサイトを実装しています。ウェブサイトには2つのページがあります。最初のページにすべてのアイテムが表示され、ユーザーがそれをクリックすると詳細情報ページにリダイレクトされます。Angularjs、コントローラからのビューのリダイレクト
私は私のルートは以下のように設定する必要があり:
var app = angular.module('myApp', ["ngRoute"]);
app.config(function($routeProvider) {
$routeProvider
.when("/list", {
templateUrl : "list.html",
controller : "listCtrl"
})
.when("/detail/:id"){
templateUrl : "detail.html"
}
});
するlist.htmlで。私はng-repeatを使って項目のリストを表示し、リスナーを使ってマウスのクリックを聞きます。
<ul class="list-group">
<li class="list-group-item" ng-repeat="i in items">{{i.name}}
<a href="#" ng-click="goToEdit($index)">
<span class="glyphicon glyphicon-pencil"></span>
</a>
</li>
</ul>
ng-click機能で詳細情報にリダイレクトしたいと考えています。 私は$location.path()
を試しましたが、動作しません。
$scope.goToEdit = function(index){
console.log($location.path());
$location.path("/detail/" + index);
console.log($location.path());
}
この方法は機能しません。 コンソールshow location.path()の2番目のログが "/ detail/id"に変更されました。
$location.path();
の後に$scope.$apply()
を追加すると、すでに処理中のエラーが発生します。
解決策はありますか?
おかげ
コントローラを見せてもらいます、何を注入していますか? – Mike
Plunkerで問題を再現できますか? – Phil