使用state.go从角度控制器接收参数到另一个控制器

时间:2017-04-20 18:03:10

标签: angularjs

我使用state.go发送参数,如:

 $state.go("root.detalleregistros", {tipo: "edicion", catalogoid: $scope.catalogo
                });

进入控制器我想接收我使用的参数:

 function detalleRegistrosCtrl($scope, apiService, notificationService, $rootScope, $location, $stateParams, $http, $state) {

        $scope.catalogoid = $stateParams.catalogoid;

我的控制器状态我想接收参数:

.state('root.detalleregistros', {
                 url: "detalleRegistros.html",
                 templateUrl: "../SPA/administrador/catalogos/detalleRegistros.html",
                 controller: "detalleRegistrosCtrl",
                 authenticate: true
             })

问题是我没有收到$scope.catalogoid = $stateParams.catalogoid;我总是得到undefined的短信,有人可以帮我吗?

1 个答案:

答案 0 :(得分:2)

在您的州定义中,您需要指定该路线的参数。

.state('root.detalleregistros', {
   url: "detalleRegistros/:tipo/:catalogoid",
  //rest of your code

或者Alon指出,你可以从网址中省略它们并使用params:{

.state('root.detalleregistros', {
   url: "detalleRegistros",
   params: {
     tipo: null,
     catalogoid: null
   },