AllenFang / AllenFang/react-bootstrap-table
TypeError keep throwing if renew data after delete all rows in table
- Linguagem predominante
- JavaScript
- Estrelas
- 2.2k
- Forks
- 761
- Métricas de merge de PRs
- Nenhum PR com merge em 30d
Descrição
Hi, I have a problem here:
The table will throw `Uncaught (in promise) TypeError: Cannot read property 'coreId' of undefined` if I renew the `data` source after delete all rows (not matter delete one by one or delete all of them once), but it works fine after I re-fresh page even the table is empty. The Error screen shot:


Also, the table is working well for adding (renew `data` source), multi-delete rows (just not delete all).
And the way I am working on it is:
```javascript
...
remoteDelete = (row) => {
let settleFlag = 1;
let settleInfo = {coreId: row};
this.props.registerDevice(settleInfo, settleFlag).then(
(res) => {
// --> renew data source from database after deleted rows
this.setState({dataArr: res.data.devices, unsettledDevices: res.data.unsettledDevices});
},
(err) => {
console.error(err);
}
);
console.log('delete', settleInfo);
}
onAddRow = (row) => {
let settleFlag = 0;
this.props.registerDevice(row, settleFlag).then(
(res) => {
// --> renew data source from database after adding row
this.setState({dataArr: res.data.devices, unsettledDevices: res.data.unsettledDevices});
},
(err) => {
console.error(err);
}
);
}
options = {
// paginationPosition:"top",
paginationShowsTotal: this.renderPaginationShowsTotal,
sizePerPageList: ['10', '30', '50', '60'],
sizePerPage: 10,
sizePerPageDropDown: this.renderSizePerPageDropDown,
// exportCSVBtn: this.createCustomExportCSVButton,
defaultSortName: 'coreId',
defaultSortOrder: 'asc',
handleConfirmDeleteRow: this.confirmDelete,
onDeleteRow: this.remoteDelete,
insertModalHeader: this.modalHeader,
insertModalBody: this.modalBody,
insertText: 'register',
deleteText: 'unregister',
onAddRow: this.onAddRow,
}
...
render() {
const {dataArr, errors, delModalOpen, delNext, delDeviceId} = this.state;
let data = _.isEmpty(dataArr)? [] : dataArr;
console.log('device render', data); //--> The data is correct when the error comes
const confirmMegs = `Do you want to unregister device:`;
return (
Core ID
...
}
```
I check the data source when it renew (adding or deleting), they look same, so are there any errors in setting or usage of the table?
Please give me some hints.
Thank you.
Guia de contribuição
Avaliação
Esta issue ainda não foi avaliada.