从控制器内部的函数调用服务

时间:2014-06-10 10:47:05

标签: angularjs

我正在使用角度引导UI进行模态弹出。我的要求是,当用户点击“删除”链接时,应该打开第一个模态弹出,当用户单击“确定”时,将调用“删除休息API”,用于删除记录。但为此,我需要将记录ID传递给我的删除功能。 那么我怎样才能将记录id传递给模态insta控制器,因为我在用户单击模态弹出窗口上的ok按钮时调用此函数。这是我的代码。

`$ scope.items = ['item1','item2','item3'];

  $scope.open = function (size,billingID) {
  console.log("in model instance" + billingID);
  var modalInstance = $modal.open({
      templateUrl: 'myModalContent.html',
      controller: ModalInstanceCtrl,
      size: size,
       resolve: {
        items: function () {
          return $scope.items;
        }
      }
    });

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



};


  var ModalInstanceCtrl = function ($scope, $modalInstance, items) {


      $scope.items = items;
      $scope.selected = {
        item: $scope.items[0]
      };
      $scope.billingID=billingID;
      $scope.ok = function ( billingID) {

        $modalInstance.close($scope.selected.item);
        deleteCC(billingID);

      };

      $scope.cancel = function () {
          console.log("in model instance cancel");
        $modalInstance.dismiss('cancel');
      };
    };

`

我可以在open()中获取我的账单ID但是如何在我的ModalInstanceCtrl中访问相同的建筑ID?

2 个答案:

答案 0 :(得分:2)

在创建模态实例时将其添加到解析对象

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

答案 1 :(得分:0)

你的意思是角度控制器,你想要呼叫服务,所以答案就在这里,

var app = angular.module('app', []);

app.controller('appController', ['$scope', 'appService' function($scope, appService)
{   
    $scope.message = appService;

}]).
factory('appService', function()
{
    retutn function()
    {
        'from service message Hi!! ';   
    }
});