我正在玩这个角度插件。 这是我的问题 - 我正在设置没有标题的网格作为默认值。当我想重新设置网格标题时,通过更改gridOptions.showHeader属性它不起作用。 这是我的切换代码(我已经添加了refresh(),一旦我看到它没有它,但刷新()也没有帮助):
$scope.toggleHeader = function(){
$scope.gridOptions.showHeader = !$scope.gridOptions.showHeader;
$scope.gridApi.grid.refresh();
}
这是一个plnkr:http://plnkr.co/edit/eEzSH5hKUTZFbkxiruSt
无论如何要打开和关闭网格标题?
编辑:为了显示这种变化的动机,我已经修改了我的代码,以便在某些gridStatus变量上使用观察者(这可能是任何东西 - 在我的情况下它是最小化的):答案 0 :(得分:0)
许多gridOptions不是动态的 - 它们在初始化时设置,然后不重新评估。这是网格目标的一部分,以最大限度地减少观察者的数量(从而最大限度地提高性能)参考:https://github.com/angular-ui/ng-grid/issues/1819
简短的回答是,一旦网格渲染,你就无法轻易改变这一点 - 你要么有一个带有标题的网格,要么有一个没有。但是,您可以重新渲染网格。最简单的方法是在你的网格指令上放置一个ng-if,然后切换它,看起来像这样:
<div ui-grid="gridOptions" ng-if="refresh"></div>
和
function refreshGrid() {
$scope.refresh = false;
$timeout(function() {
$scope.refresh = true;
});
};