本文主要是介绍钩子函数useState动态刷新列表,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
实现原理:主要利用setLists([...lists,params])更新钩子函数的值
export default () =>{const [lists,setLists] = useState([])// 使用 useEffect 在页面加载时获取数据useEffect(() => {// 定义一个内部函数用于获取数据const fetchData = async () => {try {const res = await get_keyword({}); // 调用从API获取数据的函数setLists(res.data); // 将数据设置到state中} catch (error) {console.error('Error fetching data:', error);}};// 调用数据获取函数fetchData();}, []); // 注意依赖项数组为空,表示只在组件挂载时执行const onSearch: SearchProps['onSearch'] = async (value, _e, info) => {console.log(info?.source, value)// const params = {cars_name:value}// const res = await cars_rk(params)const params = {keyword_name:value}await add_keyword(params)setLists([...lists,params])};return (<div><Search placeholder="input search text" onSearch={onSearch} style={{ width: 200 }} /><div style={{display:"flex",overflowX: 'auto',width:"100%"}}>{lists && lists.map((item,index)=>{console.log("item",item)return(<ProListstyle={{flex:"0 0 auto",overflowX:"auto",width:"350px",height:"900px"}}headerTitle={item.keyword_name}metas={{title:{dataIndex:"commenter_name"},avatar:{dataIndex:"avatar_url"},description:{dataIndex:"content"}}}request={async ()=>{const params = {keyword_name:item.keyword_name}const res = await get_cars(params)return {success:true,data:res.data}}}/>)})}</div></div>)
}
这篇关于钩子函数useState动态刷新列表的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!