在角对象之间传递参数

时间:2013-12-31 13:14:01

标签: angularjs

我有以下控制器:

appControllers.controller('orgCtrl', function ($scope, orgService) {
  ...
  $scope.orgDel = function (org) {
    orgService.delete(org, function () {
      orgService.getList(function (err, list) {
        if (err)
          console.log('Error: ', err);
        else
          $scope.$apply(function () {
            $scope.list = list;
          });
      });
    });
  }
});

我的HTML上的以下链接:

<div ng-repeat="org in list">
    <div ng-controller="OrgCtrl">
        <a href="#" ng-click="orgDel(org.name)">Delete</a>
    </div>
</div>

我想添加一个'你确定吗?'模态。所以我将链接更改为:

<a href="#" id="warning">Delete</a>

这是模态(玉代码):

#warning.modal.fade
    .modal-dialog
      .modal-content
        .modal-header
          button.close(type='button', data-dismiss='modal', aria-hidden='true') ×
          h4.modal-title Warning
        .modal-body
          p Are you sure you want to delete this organization?
        .modal-footer
          .spinner
            .cube1
            .cube2
          button.btn.btn-default(type='button', data-dismiss='modal') Close
          button.btn.btn-primary(type='button', ng-click="delOrg()") Delete

我正在使用jQuery启动模式。但是,如何在orgDel范围之外实现已打开模式中的ng-repeat?我需要以某种方式将org.name参数传递给模态但不确定如何

1 个答案:

答案 0 :(得分:0)

我会删除jQuery并使用 UI Bootstrap for Angular 模态。

这是一个我们将一些数据传递给模型的演示: Plunker

一般来说,莫代尔有自己的控制器(或者说是范围)。

通过调用resolve,我们将items列表传递给模态:

resolve: {
        items: function () {
          return $scope.items;
        } 

您也可以传递对象的副本:

resolve: {
        items: function () {
          return angualr.copy($scope.items);
        }