我有一个带有批处理模式的DevExtreme React Grid。我想知道当我在网格中更新时,如何在"状态"中设置值。请检查我下面的代码,并建议如何做到这一点。。。
设置初始状态:-
this.state = {
GridState : []
};
加载状态中的现有数据:-
componentDidMount() {
axios.get(ConfigItem[0].APIPath+'users/UserRights/2')
.then(res => {
console.log(res.data.data);
this.setState({GridState:res.data.data});
})
}
点击提交按钮时获取电网状态数据:-
onSubmitHandler = (event) => {
event.preventDefault();
this.dataGrid.instance.saveEditData();
console.log(this.state.GridState); // Here I am getting existing data only but I need to get updated data also.
}
HTML渲染:-
<div id="data-grid-demo">
<DataGrid
dataSource={this.state.GridState}
ref={ref => this.dataGrid = ref}
keyExpr="UserAccessId"
showBorders={true}
onToolbarPreparing={this.onToolbarPreparing}
>
<Paging enabled={false} />
<Editing
mode="batch"
allowUpdating={true}
selectTextOnEditStart={true}
startEditAction='click' />
<Column dataField="UserAccessId" visible={false} />
<Column dataField="MenuId" visible={false} />
<Column dataField="Menu" width={100} />
<Column dataField="SubMenu" width={170} />
<Column dataField="ViewAccess" caption="ViewAccess" dataType="boolean" width={150} >
<CheckBox defaultValue={false} />
</Column>
<Column dataField="ZohoParameter" />
<Column dataField="Remarks" />
</DataGrid>
</div>
您可以设置DataGrid的onRowUpdated属性,并从对象参数的数据字段中获取更改的行。