0

我在玩这个 plnkr:http ://plnkr.co/edit/DRJtivCrxQy4s22ntsci

控制器是:

angular.module('starter.controllers', [])

.controller('AppCtrl', function($scope) {})

.controller('DisplayCtrl', function($scope, ModalFactory) {

 $scope.array = null; //initialize to null

 $scope.run = function() { 

var array = [{ //arbitrary array of UNKNOWN fields
  "a": 0,
  "b": 1
}, {
  "a": 1,
  "b": 8
}, {
  "a": 2,
  "b": 5
}, {
  "a": 3,
  "b": 7
}, {
  "a": 4,
  "b": 0
}, {
  "a": 5,
  "b": 3
}, {
  "a": 6,
  "b": 6
}, {
  "a": 7,
  "b": 4
}, {
  "a": 8,
  "b": 2
}, {
  "a": 9,
  "b": 9
}];

    $scope.array = array;
    ModalFactory.init($scope).then(function(modal) {
                            modal.show();
                });
}

});

模态是通过工厂创建的:

angular.module('modalfactory',['ionic'])
.service('ModalFactory', function($ionicModal, $rootScope) {
var init = function($scope) {
var promise;
$scope = $scope;
promise = $ionicModal.fromTemplateUrl('array.html', {
  scope: $scope,
  animation: 'slide-in-up'
}).then(function(modal) {
  $scope.modal = modal;
  return modal;
});
$scope.openModal = function() {
   $scope.modal.show();
 };
 $scope.closeModal = function() {
   $scope.modal.hide();
 };
 $scope.$on('$destroy', function() {
   $scope.modal.remove();
 });
return promise;
}
return {
init: init
}
})

如果单击“显示”,则会弹出一个模式窗口。我希望能够在其中显示任意数组。ng-grid 不能按我想要的方式工作。我们怎样才能做到这一点?

4

2 回答 2

0

plunker有很多问题。您没有将ui.grid模块添加为依赖项,并且您实际使用的ui.gridng-grid版本适用于该模块(早期版本)。

这是一个更新的 plunker,显示了对话框中呈现的列: http ://plnkr.co/edit/BQbSU0iDboS23YISfWGY?p=preview

为了完成这项工作,我必须:

  • 取出 cordova.js 脚本标签
  • 'ng-grid'模块添加到 app.js 模块依赖项
  • 将指令名称从 更改ui-gridng-grid
  • concat数据,array以便使用相同的对象引用。

这应该可以帮助您前进。

于 2014-12-04T17:37:05.773 回答
0

我发现这实际上是由于样式表造成的。我使用了定制器应用程序并下载了一个新的 CSS。网格工作没有任何变化。

于 2014-12-05T03:54:36.807 回答