Angularjs $lieu.url ne fonctionne pas, l'emplacement.href œuvres

Quand j'ai essayer de changer l'emplacement à l'intérieur de mon contrôleur de charge racine du serveur, pas le certaines de page:

'use strict';

eventsApp.controller('TestController',
    function TestController($scope, $location){
        console.log('test comes here!');
        $scope.makeTest = function(){
            $location.url('/test');
        }
});

J'ai un routeur comme ceci:

'use strict';

var eventsApp = angular.module('eventsApp', ['ngResource','ngSanitize'])
    .config(function($routeProvider, $locationProvider){
        $routeProvider
          .when('/test',{
            templateUrl:'templates/test.html',
            controller:'TestController'
        }).otherwise({
            templateUrl:'templates/default.html',
            controller:'DefaultController',
            redirectTo:''
        });
        $locationProvider.html5Mode(true);
    });

Dans mon index.html j'ai défini la directive

<base href="/">

Il semble que chaque fois qu'il met en œuvre sinon. Cependant, si j'utilise

location.href = '/test';

au lieu de

$location.url('/test');

puis il travaille.
Je n'ai aucune idée à propos d'un tel comportement. Faites-vous?

Vous avez besoin d'utiliser $scope.$apply() voir stackoverflow.com/questions/11784656/...
J'ai essayé de le faire avant. Il me dit: Erreur: $s'appliquent déjà en cours

OriginalL'auteur srgg6701 | 2014-05-26