2013-05-08 4 views
2

это мой 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> 

, когда я нажимаю на эту ссылку, я перенаправлен обратно в/#/

где я иду не так?

ответ

3

Ваши $ правила routeProvider ошибаетесь:

when('game/:gameId',{ 

должен стать

when('/game/:gameId',{ 

Поскольку маршрут не распознается, он перенаправляет на '/'. Изменение этого, скорее всего, решит проблему.

Кроме того, вы можете найти ngHref полезным, чтобы избежать ссылки сломаны, прежде чем {{модель}} привязок решена: http://docs.angularjs.org/api/ng.directive:ngHref

+0

спасибо, это сделал трюк – debuggerpk

Смежные вопросы