2016-08-05 101 views
0

我在使用ui-grid禁用gridMenu和重命名我的列时遇到了问题。我做了一个plnkr所以你可以看到:https://plnkr.co/edit/EGhvBGOJCKPzfupjCROx?p=previewAngularJs&ui-grid:网格忽略gridOptions

正如你可以看到的script.js,我想我的列被命名为“香蕉”,“CHROM”和“位置”:

var app = angular.module('myApp', ['ui.grid']); 
app.service('provide', ['$http', function($http) { 
    return { 
    getAllVariants: function() { 
     return $http.get('./varAjax.php'); 
    } 
    }; 
    }]); 

app.controller('MainCtrl', ['$scope', 'provide', 'uiGridConstants',     function($scope, provide, uiGridConstants) { 

    provide.getAllVariants().success(function(data) { 
     $scope.gridOptions.data = data; 
     $scope.myData = data; 
     console.log($scope.gridOptions); 
     console.log($scope.myData); 
    }); 

    $scope.gridOptions = { 
     data: 'myData', 
     enableGridMenu: false, 
     showGroupPanel: true, 
     enableColumnResizing: true, 
     enableFiltering: true, 
     showGridFooter: true, 
     showColumnFooter: true, 
     columnDefs: [ 
      { name: 'id', displayName: 'banana', width: 30 }, 
      { name: 'chr', displayName: 'chrom', width: 30}, 
      { name: 'pos_start', displayName: 'position', width: 50} 
      ] 
    }; 

}]); 

的数据看起来就像是:

[ 
{ 
"id":"1","chr":"chr1","pos_start":"11169789" 
}, 
{ 
"id":"2","chr":"chr1","pos_start":"11172923" 
} 
] 

这里是我打电话给我的网格:

<body> 
    <h1>Variants</h1> 
    <div ng-app="myApp" ng-controller="MainCtrl"> 
     <div id="grid1" ui-grid="{ data: myData }" class="myGrid"></div> 
    </div> 
    </body> 

回答

2

更改您的HT ML到

<body> 
    <h1>Variants</h1> 
    <div ng-app="myApp" ng-controller="MainCtrl"> 
     <div id="grid1" ui-grid="gridOptions" class="myGrid"></div> 
    </div> 
    </body> 

此刻你只是将数据传递到UI网格而不是期权,这会通过选项(如columndefs)和数据。

+0

非常感谢你,现在看起来只有合乎逻辑,你说出来。 – OvoiDs