Angular routeParams返回一个空对象

时间:2015-01-11 11:23:40

标签: javascript angularjs html5 route-provider

我正在尝试使用angular routeProvider和routeParams来获取id和name参数。 这是js:

angular.module("test",["ngRoute"])
 .config(["$routeProvider",function(a){
     a.when("/test/:id",{}).
       when("/tests/:name",{});
     }
 ]).controller("testCtrl",["$scope","$routeParams",function(a,b){
     a.result = b.name; //console.log(b.id);
 }
]);

和HTML

<html ng-app="test">
...
<body ng-controller="testCtrl">
<p>Test ID</p>
<a href="/test/1">1</a>
<a href="/test/2">2</a>


<p>Test Name</p>
<a href="/tests/test1">Test1</a>
<a href="/tests/test1">Test2</a>
<a href="/tests/test1">Test3</a>


<p>RouteParams Result</p>
<p>{{ result }}</p>
</body>

这不是SPA,因此我没有在 功能时设置templateUrl和controller。我只需要URL参数。我已经包含了角度和角度路径库

Here's the plunkr just in case

1 个答案:

答案 0 :(得分:1)

 a.when("/test/:id",{}).
   when("/tests/:name",{
     controller: "testCtrl"
   });
 }

您需要将控制器指定为当前状态才能获取routeParams。