0

我正在使用 ng-Grid v2.0.7,问题是 ng-grid 第一次显示时,它被最小化了。这是我的意思的图片:

在此处输入图像描述

只有在点击最小化的表格(上图)后,整个表格才能正常显示(下图)。这是我正在使用的代码:

$scope.gridOptions = {
    data: 'jsonData.value',
    multiSelect: false
};

为什么会这样?

编辑:这是 html 文件中的定义:

<div class="gridStyle" ng-show="(dataViewType == 'table')" ng-grid="gridOptions"></div>
4

2 回答 2

2

尝试ng-cloak在您的网格元素上使用该指令。

例如在一个简单的 div 上:

<div ng-cloak></div> 

“ngCloak 指令用于防止 Angular html 模板在您的应用程序加载时被浏览器以原始(未编译)形式短暂显示。使用此指令可以避免由 html 模板显示引起的不良闪烁效果。”

文档:http ://docs.angularjs.org/api/ng.directive:ngCloak

于 2013-10-02T06:52:18.067 回答
0

我有一个类似的问题,它是由 CSS 属性引起的。

这是因为我将高度和宽度设置为百分比,而不是固定数量的像素。

将它们更改为固定数量的像素消除了问题(让我只剩下选择什么值来容纳我的动态 JSON 数据的问题)。

我最终在我的控制器中得到了这个:

    $scope.getTableStyle= function() {
       var rowHeight=30;
       var headerHeight=45;
       return {
          height: (gridHeaderHeight + 1 + 
                  ($scope.myGrid.length * (gridRowHieght + 1))) + "px"
       };
    };  

这在我的 HTML 中

   <div ng-show="myGrid" class="gridStyle" ng-grid="gridOptions" 
        ng-style="getTableStyle()" ng-cloak></div>

为了在我定期从服务器获取新的 JSON 数据时计算网格大小。

于 2014-04-23T07:08:33.753 回答