AngularUI:模态,解析和控制器的本地(如何将模型传递给模态控制器)

时间:2013-09-08 21:10:45

标签: angularjs angular-ui

无论我尝试做什么,我似乎无法将数据传递给模态控制器。

我尝试使用resolve:

   var opts = {
        backdrop: true,
        keyboard: true,
        backdropClick: true,
        templateUrl:  'views/details/basic/view.html',
        controller: 'BoxDetailsCtrl'
        resolve: {
            item: function () {
                return angular.copy(item)
            },
            price: function (){ return 100; }
        }

        this.d = this.d || $dialog.dialog($scope.opts);
        this.d.open();

我试过传递范围:

     var opts = {
        scope: $scope
        ...

在我的绝望中,我的事件试图破解对话服务:

 if (self.options.controller) {
                    var ctrl = $controller(self.options.controller, locals);
                    ctrl.modal = self.options.modal; // nasty hack
                    self.modalEl.children().data('ngControllerController', ctrl);
           }

没有任何效果。我似乎无法将数据传递给BoxDetailsCtrl。有什么想法吗?

干杯,

1 个答案:

答案 0 :(得分:0)

这个方法对我有用......它在coffeescript中,但你可以把它转换成js。

AngularUI separate files for modal controllers

resolve:
       primer3: ->
         $scope.primer3

然后

angular.module('assaypipelineApp').controller "ConfigureModalCtrl", ($scope,  $modalInstance, primer3) ->
  $scope.primer3 = primer3['data']

我发现我得到了一个嵌入了数据数组的对象,并带有http返回码。我真的不明白为什么,但这很有效。

我希望有所帮助。