Skrip saya kelihatan seperti di bawah,
Selepasapi mendapat item itu, saya mahu memaparkan semula komponen dan membuat EnhancedTable
muncul.
Tetapi dengan skrip ini, pengambilan api berjaya, tetapi EnhancedTable tidak muncul.
response.data mengembalikan data yang betul, tetapi tiada pemaparan semula dilakukan.
Di mana silap saya?
const MetaPanel = (props) =>{ const [drawingItems,setDrawingItems] = React.useState([]); useEffect(() => { console.log("File List"); var formData = new FormData(); axios.defaults.xsrfHeaderName = "X-CSRFTOKEN"; axios.defaults.xsrfCookieName = "csrftoken"; axios.defaults.withCredentials = true; axios.get(`/api/drawings/`) .then(function (response) { console.log(response.data); setDrawingItems(response.data); }) .catch(function (response) { console.log(response); }); },[]); return ( <div> <div> <p>FileList</p> {drawingItems.length != 0 & <EnhancedTable data={drawingItems}></EnhancedTable> } </div> </div> ); }
Boleh cuba:
Dengan cara ini, anda boleh menambah baik bahagian useEffect