2

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

我尝试使用解析:

   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。有任何想法吗?

干杯,

4

1 回答 1

0

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

用于模态控制器的 AngularUI 单独文件

resolve:
       primer3: ->
         $scope.primer3

然后

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

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

我希望这会有所帮助。

于 2014-02-18T07:20:57.097 回答