angular-ui-grid保存状态对象不包含列定义的“ field”属性

时间:2018-11-18 14:54:47

标签: angular-ui-grid

我正在使用保存状态服务-> $ scope.gridApi.saveState.save()保存网格的当前状态。但是保存状态对象不包含列Def中定义的属性“字段”。它仅包含名称,可见性,宽度,排序和过滤器属性。

是否有任何方法可以从saveStateService获取列的“字段”属性?

1 个答案:

答案 0 :(得分:0)

如果要获取columnDef中定义的字段的值,可以通过以下方式实现:

columnDef定义的示例

 let gridColumnDef = {
            enableFiltering: true, 
            columnDefs: [
                { field: "Types", enableCellEdit: false, wordWrap: false },
                { field: "FileName", displayName: "File Name", enableCellEdit: false, width: "30%", wordWrap: true },
                { field: "NameState", displayName: "Name State", enableCellEdit: false, width: "9%" },
                { field: "Requirement", displayName: "Prop./Insu.", enableCellEdit: false, width: "7%" },
                { field: "Version", displayName: "Ver.", enableCellEdit: false, width: "5%" },
                {
                  field: 'Actions', displayName: 'Action', width: "25%",
                  cellTemplate: `<div class="ui-grid-cell-contents">
                                    <span ng-click="grid.appScope.SelectedRowGridConfig(row.entity)" style="margin-top: -7px !important;font-size:15px !important"
                                        data-ng-if="(row.entity.Requirement === 'Approach') && row.entity.NameState !== 'uncharged'">
                                        <i class="fa fa-cloud-download color-black"></i>
                                </div>`
                }]
        };

您还可以从ui-grid访问方法: grid.appScope.nameMethod(params),在我的情况下,我调用方法SelectedRowGridConfig,然后将row.entity作为参数传递给您:

grid.appScope.SelectedRowGridConfig(row.entity)

希望对您有帮助。