AngularJS从模态传回数据

时间:2014-01-26 00:54:11

标签: angularjs

我在这里感谢一些帮助...我正在考虑将AngularJS用于我想到的一些项目。目前正在试验Bootstrap UI指令。请在此处查看我的代码:http://pastebin.com/zJGpNLep

有没有办法可以用$ scope.formData中的数据更新$ scope.groups,这是从模态生成的?我已经尝试了$ scope.groups.push($ scope.formData),这已被证明是不成功的,只有通过刷新页面才能看到新数据。

任何想法??

由于

2 个答案:

答案 0 :(得分:5)

你走在正确的轨道上,你只是忽略了这些界限:

modalInstance.result.then(function (formData) {
  //use formData
});

这应该在$ scope.showAddGroupModal函数的末尾,如bootstrap-ui示例所示:

$scope.open = function () {

  var modalInstance = $modal.open({
    templateUrl: 'myModalContent.html',
    controller: ModalInstanceCtrl,
    resolve: {
      items: function () {
        return $scope.items;
      }
    }
  });

  modalInstance.result.then(function (selectedItem) {
    $scope.selected = selectedItem;
  }, function () {
    $log.info('Modal dismissed at: ' + new Date());
  });
};

答案 1 :(得分:1)

您需要与从 open 调用返回的对象的 result 属性中的promise进行交互。当模态被关闭或模态被解除时,该模式将被解决。您传递给关闭解雇的任何数据都将通过promise回调返回。

在高层次上,它看起来像这样:

var modal = $modal.open({
   // modal setup
});

modal.result.then(function(group) {
    $scope.groups.push(group)
}, function () {
   // the modal was dismissed
});

希望有所帮助。