我在这里设置了一个plunkr: http://plnkr.co/edit/NdHqQJ?p=preview
当您单击任务时,我尝试将表单数据推送到模式窗口。我已经读过你可以用" resolve"模态的属性(见下文),但我无法让它实际工作。任何见解将不胜感激。
var modalInstance = $modal.open({
templateUrl: 'editTask.html',
controller: 'ModalInstanceCtrl',
size: size,
scope: $scope,
resolve: {
items: function () {
return $scope.items;
}
}
});
如果您需要更多详细信息,请与我们联系!
答案 0 :(得分:2)
如果你想使用resolve(你可以),那么nit将是这样的:
$scope.open = function(size, task) {
var modalInstance = $modal.open({
templateUrl: 'editTask.html',
controller: 'ModalInstanceCtrl',
size: size,
resolve: {
task: function() {
return task
}
}
});
};
HTML:
<a ng-click="open('lg', noStoneTask)" style="cursor:pointer" tooltip-placement="top" tooltip="Open Task">{{noStoneTask.taskSubject}}</a>
答案 1 :(得分:1)
您必须在解析中传递要解析的范围(传递给模态)。并在模态控制器中解决它。
这是你想要实现的吗? http://plnkr.co/edit/Q0G79C?p=preview
我修改了模态以将noStoneTasks范围传递给模态
//modal
$scope.open = function (size) {
var modalInstance = $modal.open({
templateUrl: 'editTask.html',
controller: 'ModalInstanceCtrl',
size: size,
resolve: {
noStoneTasks: function () {
return $scope.noStoneTasks;
}
}
});
};
当用户单击“确定”时,我也会修改范围。
uxModule.controller('ModalInstanceCtrl', function ($scope, $modalInstance, noStoneTasks) {
$scope.ok = function () {
noStoneTasks[0].actHours++;
$modalInstance.close('save');
};
$scope.cancel = function () {
$modalInstance.dismiss('cancel');
};
});