2014-09-21 3 views
0

Я изучаю Angular.js через mean.io, у которого есть пакет статей в качестве примера.

В контроллере статьи мы видим линию articleId: $stateParams.articleId:

$scope.findOne = function() { 
     Articles.get({ 
     articleId: $stateParams.articleId 
     }, function(article) { 
     $scope.article = article; 
     }); 
    }; 

See the full code here.

Мне интересно, где и как articleId настроено на $stateParams. В основном, где и как делают $stateParams?

Обновление: В этом useful link, предоставленном samitha, сказано: «В контроллерах состояния объект $ stateParams будет содержать только те параметры, которые были зарегистрированы в этом состоянии».

А как же articleId зарегистрироваться «с этим штатом»? Найти код для этого было бы полезно.

+0

это модуль 'stateParams' – underscore

+0

https://github.com/angular-ui/ui-router/wiki/URL-Routing – underscore

+0

@samitha, можете ли вы на самом деле ответить на вопрос, где установлен' articleId'? В ссылке говорится: «В контроллерах состояния объект $ stateParams будет содержать только те параметры, которые были зарегистрированы в этом состоянии». Итак, где «articleId» зарегистрировался с этим состоянием? – randwa1k

ответ

2

Как samitha menthoned, этот код использует ui-router, правильно?

Из документа articleId будет установлен по URL-адресу.

https://github.com/angular-ui/ui-router/wiki/URL-Routing#url-parameters https://github.com/linnovate/mean/blob/master/packages/articles/public/routes/articles.js#L50

Например, при доступе к http://<your domain>/articles/1

затем $stateParams.articleId => 1.

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