这是我的app.js
var cricketapp = angular.module('cricketapp', ['ngCookies']).
config(['$routeProvider', function($routeProvider, $httpProvider, $cookies){
$routeProvider.
when('/', {
templateUrl: '/partials/games-pending-entry.html',
controller: HomeCtrl
}).
when('game/:gameId',{
templateUrl: 'partials/shortlist.html',
controller: ShortlistCtrl
}).
otherwise({redirectTo: '/'});
//$httpProvider.defaults.headers.post['X-CSRFToken'] = $cookies.csrftoken;
}]);
和controllers.js
function HomeCtrl($scope, $http){
$http.get('/api/games-pending-entry').success(function(data){
$scope.games_pending_entry = data;
});
}
function ShortlistCtrl($scope, $http, $routeParams){
$scope.gameId = $routeParams.gameId;
$http.get('api/get-players').success(function(data){
$scope.players = data;
})
}
在我的html中,我将链接称为
<a class='btn btn-warning' href='#/game/{{ game.id }}'>Enter Shortlist</a>
当我点击此链接时,我被重定向回/#/
我哪里错了?
答案 0 :(得分:3)
你的$ routeProvider规则是错误的:
when('game/:gameId',{
应该成为
when('/game/:gameId',{
由于无法识别路线,因此会重定向至“/”。改变这种情况很可能会解决问题。
另外,在{{model}}绑定解决之前,您可能会发现ngHref很有用,以避免链接断开:http://docs.angularjs.org/api/ng.directive:ngHref