我试图显示一个使用角度引导ui的模式,它解析控制器中的项。问题是我无法在模态控制器中得到那些已解决的项目。
$scope.showItemsInBill = function(bill){
var modalInstance = $uibModal.open({
animation: $scope.anismationsEnabled,
resolve: {
items: function(){
var items = [];
BillingService.getItemsInBill(bill).then(function(response){
console.log(response);
return response;
});
}
},
templateUrl: 'templates/showitems-modal.html',
controller: 'ShowItemsModalCtrl',
backdrop: 'static'
});
}该模态控制器如下:
angular.controller('ShowItemsModalCtrl', ['$scope', '$uibModalInstance', 'BillingService', 'items', function ($scope, $uibModalInstance, BillingService, items) {
init();
function init(){
console.log('Modal is initializing');
console.log(items);
$scope.items = items;
}
$scope.cancel = function () {
$uibModalInstance.dismiss('cancel');
};
$scope.printBill = function(){
console.log('printing bill');
}]);
我在控制台中得到的响应是:
24:24 Object0:对象长度: 1__proto__:数组 is :8 Modal正在初始化 模型.控制器.:9未定义
因此,我从这里了解到,服务的成功回调是被调用的,但是它没有被解析为模态控制器,而是初始化了模态控制器。为什么会发生这种情况?
是因为我正在返回成功回调的响应。如果是这样的话,我能在这种情况下做些什么呢?
发布于 2016-01-18 03:08:25
你需要在决心中兑现诺言
resolve: {
items: function(){
var items = [];
// missing "return"
return BillingService.getItemsInBill(bill).then(function(response){
console.log(response);
return response;
});
}
},https://stackoverflow.com/questions/34846087
复制相似问题