Eze*_*iro 5 controller angularjs angular-material mddialog
我使用完美运行的“locals”属性向我的 md-Dialog 发送了一些信息。用户按下按钮后,他将通过 $resource 方法发送一些信息并获得响应。我需要在 md 对话框关闭后显示该响应。如何将该响应发送给我的第一个控制器?
这是示例:
//Main controller
app.controller('Postulation_Ctrl', function($scope, $mdDialog,Postulation, Lista_Complejos){
//md-dialog function
$scope.showPrompt = function(ev){
var parentEl = angular.element(document.body);
var confirm = $mdDialog.show({
parent: parentEl,
locals: {
values: $scope.values,
},
targetEvent: ev,
t templateUrl: 'view/example.html',
controller: function DialogController($scope, $mdDialog, valores, postulaciones,user_id, Postulation) {
$scope.result = values;
$scope.createPostulation = function(){
$scope.postulation = {};
//some logic
auxPostulation = new Postulation($scope.postulation);
auxPostulation.$save(null, function(){
$scope.queryPost();
);
}
$mdDialog.hide();
}
$scope.queryPost = function() {
Postulation.query(function(response){
$scope.postulations = response; <----------I NEED TO SEND BACK THIS RESPONSE!!
},function(error){
console.log(error);
})
};
}
Run Code Online (Sandbox Code Playgroud)
您在对话框控制器中有 2 个选项,调用$mdDialog.cancel(cancelData)关闭对话框并$mdDialog.hide(successData)成功关闭对话框。
在你的第一个控制器中,你有这个:
var confirm = $mdDialog.show({...}).then(
function(successData) {
// This will be call because of $mdDialog.hide
// $scope.firstCtrlScope = successData;
}, function(cancelData) {
// This will be call because of $mdDialog.cancel
// $scope.firstCtrlScope = cancelData;
})
Run Code Online (Sandbox Code Playgroud)