Saya menggunakan jadual data bootstrap dalam apl React saya
function MyApp(){ const tableRef = useRef(null); const [tableSave, setTableSave] = useState(null) const [dataFromAPI, setDataFromAPI] = useState([]) useEffect(()=> { axios.get("url").then(response=>setDataFromAPI(response.data)) },[]) useEffect(() => { setTableSave($(tableRef.current).DataTable( { bSort: false, scrollY: "200px", scrollCollapse: true, info: true, paging: false } )); }, [dataFromAPI]); return ( <> <table className="table" ref={tableRef}> <thead> <tr> <th>A</th> <th>B</th> <th>C</th> </tr> </thead> <tbody> {tableData.map((_value, i) => { return ( <tr key={i}> <td key={i}>{_value['A']}</td> <td key={i}>{_value['B']}</td> <td key={i}>{_value['C']}</td> </tr> ); })} </tbody> </table> </> ) }
Kini data dipaparkan dengan betul dan carian berfungsi dengan sempurna, tetapi saya mahu tatasusunan apabila pengguna memasuki carian dan menapis rekod jadual. Saya tidak tahu kaedah mana yang hendak dipanggil dalam Bootstrap Datatable semasa bekerja pada apl bertindak balas. Sebagai contoh, apabila pengguna memasukkan "A" dalam kotak carian, kaedah tersebut harus dipanggil dan mengembalikan tatasusunan yang mengandungi objek dengan nilai "A" dalam mana-mana lajur. Bagaimanakah saya boleh mencapai ini dengan mengekalkan fungsi boleh data?
Baru dapat jawapan
Fungsi ini akan dipanggil setiap kali input diklik dalam bar carian, dan data yang ditapis akan dikembalikan