在AngularJS中,可以使用resolve
属性将参数传递给$uibModal
。
以下是一个示例代码:
// 控制器中打开模态框
$scope.openModal = function () {
var modalInstance = $uibModal.open({
templateUrl: 'myModalContent.html',
controller: 'ModalInstanceCtrl',
resolve: {
items: function () {
return $scope.items; // 将参数传递给模态框控制器
}
}
});
};
// 模态框控制器
angular.module('myApp').controller('ModalInstanceCtrl', function ($scope, $uibModalInstance, items) {
$scope.items = items; // 接收传递的参数
$scope.ok = function () {
$uibModalInstance.close($scope.selected.item);
};
$scope.cancel = function () {
$uibModalInstance.dismiss('cancel');
};
});
在上述代码中,使用resolve
属性将参数items
传递给模态框控制器ModalInstanceCtrl
。在模态框控制器中,可以通过注入items
来接收传递的参数。
在模态框控制器中,可以使用$uibModalInstance.close
方法关闭模态框,并返回选择的值。使用$uibModalInstance.dismiss
方法关闭模态框,不返回任何值。
请确保在HTML中正确引入相应的AngularJS和UI Bootstrap库。