Dalam Reactjs, bagaimana saya boleh menambah penapis carian pada Jadual Data saya?
P粉447002127
2023-08-17 15:51:24
<p>Saya mahu meningkatkan Jadual Data saya dengan menambahkan penapis carian dalam ReactJS. Saya mahu pengguna dapat mencari entri tertentu dalam jadual. Matlamatnya adalah untuk membolehkan pengguna mencari dan mencari data tertentu dalam jadual dengan mudah.Bagaimana untuk melaksanakan ini?</p>
<pre class="brush:php;toolbar:false;"><><ScrollView showsHorizontalScrollIndicator>
<Lihat gaya={styles.root}>
<TouchableOpacity
style={[styles.button, styles.buttonOutline]}
onPress={handleBackButtonClick}
>
<Gaya teks={styles.buttonOutlineText}>返回</Text>
</TouchableOpacity>
</Lihat>
<Input Teks
style={styles.searchInput}
pemegang tempat="按客户搜索..."
/>
<Gaya Jadual Data={styles.container}>
<DataTable.Header style={styles.tableHeader}>
<DataTable.Title>客户</DataTable.Title>
<DataTable.Title>地址</DataTable.Title>
<DataTable.Title>手机号码</DataTable.Title>
<DataTable.Title>车牌号码</DataTable.Title>
</DataTable.Header>
{displayedCustomers.map((customer, index) =>{
kembali(
<TouchableOpacity
kunci={indeks}
onPress={() => handleRowClick(pelanggan)}
style={[ styles.row,
dipilihBaris && selectedRow.id === customer.id && styles.selectedRow]}
>
<DataTable.Row key={index}>
<DataTable.Cell>{customer.customer}</DataTable.Cell>
<DataTable.Cell>{customer.address}</DataTable.Cell>
<DataTable.Cell>{customer.mobileno}</DataTable.Cell>
<DataTable.Cell>{customer.plateno}</DataTable.Cell>
</DataTable.Row>
</TouchableOpacity>
)
})}
</DataTable>
<DataTable.Penomboran
page={currentPage}
numberOfPages={Math.ceil(customers.length / itemsPerPage)}onPageChange={handlePageChange}
/>
</ScrollView></pra>
Buat keadaan untuk menahan pertanyaan carian dan keadaan lain untuk menyimpan data yang ditapis:
Sekarang tambah fungsi ini. Kemas kini status
searchQuery
状态,然后根据给定的text
参数进行过滤,并将结果设置为filteredCustomers
dahulu.Laksanakan logik ini setiap kali anda menaip dalam carian
TextInput
.Akhir sekali, hanya peta melalui
filtredCustomers
而不是displayedCustomers
: