在 ui-grid 编辑事件上与 gridData 交互

Interaction with gridData on ui-grid edit events

我正在使用 Angular ui-grid 并且对它很陌生。我收到一组对象来呈现每一行的数据。每个对象,即每一行,都有一个字段 change:false,它标记该行上的任何字段是否已被编辑。我已将此字段 visible : false 保留在屏幕上。

但是,每当对任何行的任何列进行任何更改时,我想将此字段设置为 change:true

如何通过更改 ui-下拉字段或与此相关的任何其他字段来实现。

我把这个作为我的更改栏:

{ name: "carrier_influence_group", displayName: "Carrier influence group",  enableCellEdit: true, 
                editableCellTemplate: 'ui-grid/dropdownEditor', type:'object', cellFilter: 'cigFilter', editDropdownValueLabel: 'name',
                editDropownOptionsArray: [{ id: 10, name: 'Small' }, { id: 11, name: 'Medium' }, { id: 12, name: 'Large' }]
                    },

我试着寻找任何可用的选项。但是在官方docs中找不到任何方法。请提出一种方法或一些相关链接

您可以为此使用 afterCellEdit 事件。

$scope.gridOptions.onRegisterApi = function (gridApi) {
    $scope.gridApi = gridApi;

    gridApi.edit.on.afterCellEdit($scope, function (rowEntity, colDef, newValue, oldValue) {
        if (newValue !== oldValue) {
            rowEntity['change'] = true;
        }
    });
});