在角度js中使用$ stateprovider传递查询字符串

时间:2016-06-09 06:33:45

标签: angularjs ionic-framework

以下是我目前使用的代码:

在视图中:

<a ui-sref="restaurantDetail({ type: {{restaurant.type}} })" >{{restaurant.name}}</a>

在途中,

 .state('restaurantDetail', {
    url: '/restaurantDetail/:type',
    templateUrl: 'templates/restaurantDetail.html',
    controller : 'restaurantDetailCtrl'
  })

在控制器中:

.controller('restaurantDetailCtrl', function($scope,$http,Base_URL,$state, $stateParams) {   
  console.log($stateParams); //returns Object type:""
  console.log($stateParams.type); //returns undefined
});

它应该生成网址restaurantDetail/type,但它会返回restaurantDetail

我不知道问题出在哪里?我只需要使用$stateProvider

在url中传递变量

3 个答案:

答案 0 :(得分:1)

It should be

text()

答案 1 :(得分:0)

如果你没有正确传递数据,它应该是这样的

<a ui-sref="restaurantDetail({ type: restaurant.type })">{{restaurant.name}}</a>

答案 2 :(得分:0)

我找到了解决方案。这是代码:

路线:

.state('menu.restaurantDetail', {
    url: '/restaurantDetail/:num',
    views: {
      'side-menu21': {
        templateUrl: 'templates/restaurantDetail.html',
        controller: 'restaurantDetailCtrl'
      }
    }
  })

在视图中:

<a ui-sref="menu.restaurantDetail({ num: restaurant.num })">{{restaurant.name}}</a>

然后在控制器中,您可以使用$stateParams

console.log($stateParams.num);