最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

react如何實現(xiàn)表格多條件搜索

 更新時間:2024年03月14日 14:16:28   作者:代碼真的養(yǎng)發(fā)  
這篇文章主要介紹了react如何實現(xiàn)表格多條件搜索問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教

react實現(xiàn)表格多條件搜索

  • 創(chuàng)建一個React組件來渲染表格及搜索功能??梢允褂煤瘮?shù)式組件或者類組件。
  • 在組件的狀態(tài)中定義搜索條件的值??梢允褂胾seState鉤子函數(shù)來定義和更新搜索條件的狀態(tài)。
  • 在組件中創(chuàng)建一個表單,包含多個輸入框或下拉列表等用于輸入搜索條件的表單元素。
  • 為每個表單元素綁定onChange事件處理程序,以便在輸入框內(nèi)容發(fā)生改變時更新相應的搜索條件值。
  • 定義一個函數(shù),用于處理表單的提交事件。在該函數(shù)中獲取搜索條件的值,并將其傳遞給數(shù)據(jù)源,進行過濾。
  • 在組件的render方法中,根據(jù)搜索條件對數(shù)據(jù)源進行過濾,并渲染符合條件的數(shù)據(jù)到表格中。
import React, { useState } from 'react';
 
const TableWithSearch = () => {
  const [searchValue1, setSearchValue1] = useState('');
  const [searchValue2, setSearchValue2] = useState('');
 
  const handleSearch = (e) => {
    e.preventDefault();
    // 根據(jù)搜索條件對數(shù)據(jù)源進行過濾處理
    // 這里只是一個示例,實際操作可能需要結(jié)合你的數(shù)據(jù)源和業(yè)務需求進行具體實現(xiàn)
    // filteredData是一個經(jīng)過搜索條件過濾后的數(shù)據(jù)數(shù)組
    const filteredData = dataSource.filter(item => {
      return item.field1.includes(searchValue1) && item.field2.includes(searchValue2);
    });
 
    // 渲染表格
    renderTable(filteredData);
  }
 
  const renderTable = (data) => {
    // 渲染表格邏輯,根據(jù)傳入的數(shù)據(jù)渲染表格
  }
 
  return (
    <div>
      <form onSubmit={handleSearch}>
        <input type="text" value={searchValue1} onChange={(e) => setSearchValue1(e.target.value)} />
        <input type="text" value={searchValue2} onChange={(e) => setSearchValue2(e.target.value)} />
        <button type="submit">搜索</button>
      </form>
      {renderTable(dataSource)}
    </div>
  );
}
 
export default TableWithSearch;

react查詢、搜索類功能的實現(xiàn)

查詢之類的如果是通過向列表接口中發(fā)送對應參數(shù)來查詢的,那么在默認輸出時,在useEffect鉤子中的請求中可以先為需要查詢的請求參數(shù)設初始的state,也就是null或者未定義,這樣的話初始請求的還是整個列表,然后將這些state放入useEffect的依賴中,也就是第二個參數(shù)的數(shù)組中,然后在一些查詢相關的組件中,如下拉選項、Search搜索框、時間選擇器等,具體根據(jù)可查詢項決定,然后更新初始設置的state,set為在這些組件的事件函數(shù)中將組件篩選的最終值。

因為useEffect監(jiān)聽到了這些狀態(tài)發(fā)生的變化,所以重復執(zhí)行了,重新調(diào)用了接口并傳遞了篩選參數(shù),列表狀態(tài)也發(fā)生了改變,就完成了查詢的功能。

以下為下拉選項實例:

請求函數(shù)部分:

 const [tableList, setTableList] = useState([]);
 const [status, setStatus] = useState();
 const [title, setTitle] = useState();
useEffect(() => {
   axios.get('http://crmeb.kuxia.top/adminapi/cms/category',{
   	 status: status,
   	 title: title
   	}).then((res) => {
      setTableList(res.data.list);
    });
  }, [status, title]);//將sataus設為依賴
<Select
   options={[
       { label: '全部', value: null },
       { label: '顯示', value: 1 },
       { label: '不顯示', value: 0 },
    ]}
     onChange={(value) => {
         setStatus(value);//更改了status的狀態(tài)觸發(fā)了useEffect重新執(zhí)行并發(fā)送了狀態(tài)參數(shù)完成篩選查詢
      }}/>

總結(jié)

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

  • react echarts刷新不顯示問題的解決方法

    react echarts刷新不顯示問題的解決方法

    最近在寫項目的時候遇到了一個問題,當編輯完代碼后echarts圖正常展示 , 可再次刷新頁面 , echarts會消失,所以本文給大家介紹了react echarts刷新不顯示問題原因和解決方法,需要的朋友可以參考下
    2024-02-02
  • react源碼中的生命周期和事件系統(tǒng)實例解析

    react源碼中的生命周期和事件系統(tǒng)實例解析

    這篇文章主要為大家介紹了react源碼中的生命周期和事件系統(tǒng)實例解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-01-01
  • 2022最新前端常見react面試題合集

    2022最新前端常見react面試題合集

    這篇文章主要介紹了前端常見react面試題合集,介紹了React?Fiber的簡介及fetch封裝代碼,本文給大家介紹的非常詳細,需要的朋友可以參考下
    2022-09-09
  • React?Native系列之Recyclerlistview使用詳解

    React?Native系列之Recyclerlistview使用詳解

    這篇文章主要為大家介紹了React?Native系列之Recyclerlistview使用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-10-10
  • React Native 混合開發(fā)多入口加載方式詳解

    React Native 混合開發(fā)多入口加載方式詳解

    這篇文章主要介紹了React Native 混合開發(fā)多入口加載方式詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-09-09
  • react-native彈窗封裝的方法

    react-native彈窗封裝的方法

    這篇文章主要為大家詳細介紹了react-native彈窗封裝的方法,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-08-08
  • React 條件判斷實例詳解

    React 條件判斷實例詳解

    在 React 中,可以通過 JavaScript 的條件語句來動態(tài)渲染組件或元素,下面給大家分享幾種常用的在 React 中處理條件渲染的方法,感興趣的朋友跟隨小編一起看看吧
    2024-08-08
  • React路由動畫切換實現(xiàn)過程詳解

    React路由動畫切換實現(xiàn)過程詳解

    這篇文章主要介紹了react-router 路由切換動畫的實現(xiàn)示例,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2022-12-12
  • 解決React報錯Rendered more hooks than during the previous render

    解決React報錯Rendered more hooks than during

    這篇文章主要為大家介紹了React報錯Rendered more hooks than during the previous render解決方法詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-12-12
  • 解決React報錯Cannot?find?namespace?context

    解決React報錯Cannot?find?namespace?context

    這篇文章主要為大家介紹了React報錯Cannot?find?namespace?context分析解決,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-12-12

最新評論

怀集县| 阿克| 饶阳县| 新沂市| 永修县| 濮阳县| 华蓥市| 阜康市| 平湖市| 保定市| 延边| 中超| 广德县| 宁晋县| 黄冈市| 台安县| 白朗县| 禹城市| 会宁县| 阳春市| 云浮市| 瓦房店市| 兴安县| 延庆县| 江达县| 监利县| 兴山县| 大埔县| 兴城市| 都昌县| 麦盖提县| 寿阳县| 紫阳县| 会昌县| 哈尔滨市| 太湖县| 额敏县| 新营市| 侯马市| 信阳市| 东至县|