angularjs $ routeParams.x给我一个未定义的值

时间:2015-11-09 12:10:11

标签: angularjs routing

我按如下方式设置路由:

.when('/:countryName/:categoryName', {
    templateUrl: 'views/about.html'
  })

问题是我无法从$ routeParams对象中提取值

例如,当我这样做时:

$scope.parameters = $routeParams;

$ scope.parameters等于以下对象 {" countryName":" Japan"," categoryName":" Football"}

但是,如果我尝试分配以下内容:

$scope.parameters = $routeParams.countryName; 

$ scope.parameters未定义

PLUNKER of issue I am having

这是为什么?我做错了什么?

2 个答案:

答案 0 :(得分:0)

你必须使用angular.toJson($ routeParams)反序列化$ routeParams;

答案 1 :(得分:0)

在尝试访问$ routeParams之前,您需要使用非常短的$ timeout。

$timeout(function () {

    console.log("$routeParams.x: ", $routeParams.x);

    continueAppLoad();

}, 100);