我正试图在params
中传递ui-sref
,然后将其访问state resolve
。
HTML查看
ui-sref="reservation({check_in: check_in, check_out: check_out})"
我正在尝试将params
传递给ui-sref
resolve
。
当我还没有使用controller
时,这是resolve
中的一些代码。
$http.get('server/getFilteredRooms.php', {
params: {
check_in: data.check_in,
check_out: data.check_out
}
}).then(function(res){
然后我尝试实现resolve
,因为我想在呈现view
之前等待数据获取。这样,我相信,由于来自undefined
的{{1}},我不会遇到data
尚未归还。
JS(app.js)
http function
我正在尝试访问我的.state("reservation", {
url: "/reservation",
templateUrl: "pages/reservation.html",
controller: "ReservationController",
resolve : {
promiseObj : function($http){
return $http({
method: 'GET',
url: 'server/getFilteredRooms.php',
params: {
check_in: check_in,
check_out: check_in
}
});
}
}
})
文件。
PHP
PHP
答案 0 :(得分:3)
要在状态的解析中接收这些参数,首先,您需要声明状态配置中的那些参数。更改状态配置,并按如下方式引入params
密钥:
.state("reservation", {
url: "/reservation",
templateUrl: "pages/reservation.html",
controller: "ReservationController",
params: {
check_in: null,
check_out: null
},
resolve: ...
然后,按如下方式修改解析器:
promiseObj: function($http, $transition$){
var params = $transition$.params();
return $http({
method: 'GET',
url: 'server/getFilteredRooms.php',
params: {
check_in: params.check_in,
check_out: params.check_in
}
});
}
这样,您的解析器就知道它应该从URL中提取参数值并将其传递给HTTP调用。