2014-11-20 2 views
0

Я ищу простейшее решение для использования идентификаторов метки хэша в AngularJS. Я использую AngularJS версию 1.2.22Как сделать простую хэш-метку (хэш-тег) маршрутизацию в AngularJs?

Мой код выглядит следующим образом:

App.config

// in app config: 
$routeProvider.when("/:page_id", {template: '', controller: "PageController"}); 

Контроллер

// in PageController - where I would like to read the most recent #value 
$scope.$on('$routeChangeSuccess', function(event) { 
    // What do I grab here? 

    /* I have tried the followings 
    - $routeParams.page_id -> keeps previous value (documentation says too it will) 
    - $route.current.params.page_id (current is undefined when trying to access) 
    */  
}); 

URL изменения кода

// my trigger code is a simple $location.path() 
$location.path('/'+page_id); 
$(

ответ

0

Я предлагаю вам использовать свойство разрешается (plunker):

$routeProvider.when('/:page_id', { 
    template: '<pre>{{page| json}}</pre>', 
    controller: 'PageController', 
    resolve: { 
    page: function($route, $q) { 
     var id = $route.current.params.page_id; 

     var promise = $q.when({ id: id }); // fetch the page data from the server 
     return promise; 
    } 
    } 
}); 

Затем он вводится в ваш Контроллер илит:

app.controller('PageController', function($scope, page) { 
    $scope.page = page; 


}); 
+0

спасибо Илан Frumer! – lazlojuly

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