データベースからデータを削除するためにバックエンドに API 呼び出しを行うカスタム アクションがあります。これにより、表示されているアイテムがデータベースから削除されます。このアクションの実行時にテーブル データを更新するにはどうすればよいですか?
これは、マテリアル テーブルの問題#457からのものです。
最初は、setState の変更を使用してコンポーネントを再レンダリングしようと考えましたが、うまくいかないようです。(それに応じて状態が変化するのを見ることができますが、テーブルがデータを再度フェッチすることはありません)
{
icon: "delete",
tooltip: "Delete Partner",
onClick: (event, rowData) => {
console.log(rowData);
let data = {
entityId: rowData[0].entityId
};
fetch("/deleteEntity", {
method: "POST",
headers: {
"Content-Type": "application/json"
},
body: JSON.stringify(data)
}).then(response => {
if (response.status === 204) {
let index = currentSelectedRows.findIndex(
x => x.entityId === rowData[0].entityId
);
currentSelectedRows.splice(index, 1);
this.setState({ currentSelected: currentSelectedRows });
console.log("Partner Deleted");
} else if (response.status === 500) {
console.log("Something went wrong");
}
});
}
}