Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angularjs 如何在angular UI网格中设置columnDefs属性中的过滤器_Angularjs_Angular Ui Grid - Fatal编程技术网

Angularjs 如何在angular UI网格中设置columnDefs属性中的过滤器

Angularjs 如何在angular UI网格中设置columnDefs属性中的过滤器,angularjs,angular-ui-grid,Angularjs,Angular Ui Grid,我在应用程序中有一个角度ui网格,如果任何字段值为null或空,我希望隐藏一个字段 $scope.gridOptions = { paginationPageSize: 10, columnDefs: [ { displayName: 'First Name', field: 'firstName', headerCellClass: "GridHeader" }, { displayName: 'Last Name', f

我在应用程序中有一个角度ui网格,如果任何字段值为null或空,我希望隐藏一个字段

$scope.gridOptions = { paginationPageSize: 10, columnDefs: [ { displayName: 'First Name', field: 'firstName', headerCellClass: "GridHeader" }, { displayName: 'Last Name', field: 'lastName', headerCellClass: "GridHeader" }, { displayName: 'Active Status', field: 'activeStatus', headerCellClass: "GridHeader" }, { displayName: 'RoleName', field: 'roleName', headerCellClass: "GridHeader" }, ] }; $scope.gridOptions={ 分页页面大小:10, columnDefs:[ {displayName:'firstName',field:'firstName',headerCellClass:“GridHeader”}, {displayName:'Last Name',field:'lastName',headerCellClass:'GridHeader'}, {displayName:'activeStatus',field:'activeStatus',headerCellClass:'GridHeader}, {displayName:'RoleName',字段:'RoleName',headerCellClass:'GridHeader}, ] }; 如何在现场安装过滤器。假设上述代码中我的角色名为空/空,则从网格中隐藏角色字段

非常感谢您的帮助和建议。提前谢谢:)

是的,我修好了

var result = [];
var gridValue= [
      { displayName: 'First Name', field: 'firstName', headerCellClass: "GridHeader" },
      { displayName: 'Last Name', field: 'lastName', headerCellClass: "GridHeader" },
      { displayName: 'Active Status', field: 'activeStatus', headerCellClass: "GridHeader" },
      { displayName: 'RoleName', field: 'roleName', headerCellClass: "GridHeader" },
    ]; 
在响应中,我检查了空值

if(response.data != null)
{
    if (response.data.roleName === null) {
        result = gridValue.slice(0, 3);
    }
    else {
        result = gridValue;
    }
    $scope.gridOptions = {
        paginationPageSize: 10,
        columnDefs: result,
     };
}
这对我有帮助:)

是的,我修好了

var result = [];
var gridValue= [
      { displayName: 'First Name', field: 'firstName', headerCellClass: "GridHeader" },
      { displayName: 'Last Name', field: 'lastName', headerCellClass: "GridHeader" },
      { displayName: 'Active Status', field: 'activeStatus', headerCellClass: "GridHeader" },
      { displayName: 'RoleName', field: 'roleName', headerCellClass: "GridHeader" },
    ]; 
在响应中,我检查了空值

if(response.data != null)
{
    if (response.data.roleName === null) {
        result = gridValue.slice(0, 3);
    }
    else {
        result = gridValue;
    }
    $scope.gridOptions = {
        paginationPageSize: 10,
        columnDefs: result,
     };
}

这对我有帮助:)

我建议只使用

that.grid.columnDefs[3].visible = false;
我还没有测试过,但它应该比从定义中删除列并将定义重新应用到网格更有效

我认为还可以将可见性设置为检查数据的函数

that.grid.columnDefs[3].visible = function () { 
    // replace with code checking grid.data
    return false;
}

我建议只使用

that.grid.columnDefs[3].visible = false;
我还没有测试过,但它应该比从定义中删除列并将定义重新应用到网格更有效

我认为还可以将可见性设置为检查数据的函数

that.grid.columnDefs[3].visible = function () { 
    // replace with code checking grid.data
    return false;
}

无法找到解决方案。请建议。谢天谢地,我找不到解决办法。请建议。谢谢