Angularjs 在angular js中传递带有$stateprovider的查询字符串
以下是我当前使用的代码: 鉴于:Angularjs 在angular js中传递带有$stateprovider的查询字符串,angularjs,ionic-framework,Angularjs,Ionic Framework,以下是我当前使用的代码: 鉴于: <a ui-sref="restaurantDetail({ type: {{restaurant.type}} })" >{{restaurant.name}}</a> 在控制器中: .controller('restaurantDetailCtrl', function($scope,$http,Base_URL,$state, $stateParams) { console.log($stateParams); //re
<a ui-sref="restaurantDetail({ type: {{restaurant.type}} })" >{{restaurant.name}}</a>
在控制器中:
.controller('restaurantDetailCtrl', function($scope,$http,Base_URL,$state, $stateParams) {
console.log($stateParams); //returns Object type:""
console.log($stateParams.type); //returns undefined
});
它应该生成URLrestaurantDetail/type
,但它正在返回restaurantDetail
我不知道问题在哪里?我只需要使用$stateProvider
由于您没有正确地传递数据,因此应该以这种方式传递
<a ui-sref="restaurantDetail({ type: restaurant.type })">{{restaurant.name}}</a>
{{restaurant.name}
我找到了解决方案。代码如下:
途中:
.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>
谢谢回复,它没有把餐厅还给我。这里有一个适合我的解决方案,希望它也能帮助其他人
.state('menu.restaurantDetail',{url:'/restaurantDetail/:type',视图:{side-menu21':{templateUrl:'templates/restaurantDetail.html',控制器:'restaurantDetailCtrl'}}}}}}
并且锚标记是{restaurantdetaurant.name}
.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>
console.log($stateParams.num);