角度路由参数问题

时间:2015-07-26 19:12:39

标签: angularjs routing

我正在使用一个模块,我在第一个控制器中添加了一个服务作为依赖项。所有服务正在做的是引入一些数据。 然后我有一个show函数,我在视图中添加一个锚元素,以便能够点击第一个名称,然后获取用户的详细信息。

我的第二个控制器从第一个控制器获取数据然后使用$ routeParams我试图在用户视图上显示数据。 我在这里做错了吗?

(function() {

  var app = angular.module('test');

  app.controller('testCtrl', ['$scope', 'testFactory', '$location', function($scope, testFactory, $location) {

    testFactory.getContact().then(function(data) {
         $scope.contacts = data.data;
     });

     $scope.show = function(firstname) {
       $location.path('main/' + firstname);
     };

  }]);

  app.controller('userCtrl', ['$scope', '$routeParams', function($scope, $routeParams) {
      $scope.user = $scope.contacts[$routeParams.firstname];
  }]);

}());

这些是路线

(function() {

  var app = angular.module('test', ["ngRoute"]);

  app.config(function($routeProvider, $locationProvider) {

    $routeProvider
        .when("/main", {
          templateUrl: "main.html",
          controller: "testCtrl"
        })
        .when("/main/:firstname", {
          templateUrl: "contact.html",
          controller: "userCtrl"
        })
        .otherwise({redirectTo:"/main"});

        $locationProvider.html5Mode(true);
  });

}());

这是我在控制台中收到的错误:

TypeError: Cannot read property 'any1' of undefined

其中any1是名字。

0 个答案:

没有答案