我的应用程序中有一个 mdDialog ,它调用一个 API 来响应一些数据。我需要在主控制器中可以访问此数据响应,以便可以在另一个调用中使用它。
CRUD 操作
$scope.add_id = [];
$scope.createAddress = function() {
$http.get('api.php?action=create-address', {
params: {
add1: $scope.newadd.add1,
add2: $scope.newadd.address2,
city: $scope.newadd.city,
state: $scope.newadd.state,
zip: $scope.newadd.zip
}
})
.success(function(response) {
$scope.add_id = response.data[0].address_id;
});
};
mdDialog
$scope.addParcel = function(ev) {
$mdDialog.show({
controller: DialogController,
templateUrl: 'libs/html/addparcel.html',
parent: angular.element(document.body),
targetEvent: ev,
clickOutsideToClose:true,
scope: $scope,
preserveScope: true
});
};
因此,在 addParcel mdDialog 内部,我有一个执行 addAddress 函数的按钮,它转为成功,我可以访问对话框中的数据。但是,即使对话框设置为保留范围,在我关闭对话框后,address_id 根本不会出现在主控制器中。我应该使用当地人吗?如何让数据在主控制器中可访问?请尽可能提供信息,因为我还是 AngularJS 的新手。谢谢。