在Angular.js中,$ stateParams设置在哪里?

时间:2014-09-21 00:43:06

标签: angularjs mean-stack mean.io

我正在通过mean.io学习Angular.js,它以一个文章包为例。

在文章控制器中,我们看到一行articleId: $stateParams.articleId

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

See the full code here

我想知道在articleId$stateParams的设置位置和方式。基本上$stateParams在哪里以及如何设置?

更新:在samitha提供的useful link中,它说:"在状态控制器中,$ stateParams对象将只包含在该状态下注册的参数。"

那么articleId在哪里注册"与该状态"?找到这个代码会有所帮助。

1 个答案:

答案 0 :(得分:2)

当samitha被篡改时,此代码使用ui-router,对吗?

从文档中,articleId将由网址设置。

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