我有一个模态并执行一些过程来从模态更新值,而不是从我的控制器更新。请让我知道如何从modal到控制器获取值($ scope.currentItem.value)。
$scope.showModalForm = function(data, index) {
$scope.currentItem = data;
ngDialog.open(
{
template: '/scripts/app/panel/MyInfo.html',
controller: 'MyInfoController',
scope: $scope,
width:"50%",
})
};
angular.module('app')
.controller('MyInfoController', function ($scope,$http, $log) {
$scope.submit = function() {
// OPen modal and process sucessfully need to send the approve back to controller
if(process) {
$scope.currentItem.value = "Corrected";
}
if(!process) {
$scope.currentItem.value = "Wrong";
}
}
}
答案 0 :(得分:0)
根据ngDialog docs:
将传递给对话框的Scope对象。如果您使用具有单独$ scope服务的控制器,则此对象将传递给$ scope。$ parent param
因此,在MyInfoController中,您需要引用父控制器的$ scope作为$ scope。$ parent而不是$ scope。像这样:
$scope.$parent.currentItem.value = "Corrected";
这是一个有效的plunk