当前位置: 首页 > news >正文

国外设计网站d开头的上海模板建站软件

国外设计网站d开头的,上海模板建站软件,网站开发需要学shenme,重庆璧山网站制作报价react开发调用api接口一般使用useEffect来监听值的变化,通过值的变化与否来进行接口调用。 比如我们要进行一个查询接口 const [pageParams, setPage] useState({name: ,id: ,});const [dataList, setDataList] useState([]);const getList async () > {const…

react开发调用api接口一般使用useEffect来监听值的变化,通过值的变化与否来进行接口调用。
比如我们要进行一个查询接口

    const [pageParams, setPage] = useState({name: '',id: '',});const [dataList, setDataList] = useState([]);const getList = async () => {const res = await requirementList({...pageParams,});setDataList(res.data.records);};useEffect(() => {getList();}, [pageParams]);//当pageParams值变化的时候,就会触发list接口

当然,页面内可能会有很多的按钮,比如有两个input框,一个input框是控制查询名称,一个input是查询id。这两个按钮后面有一个查询按钮,当点击查询按钮的时候,才会进行页面的数据处理。
因此需要绑定两个input的值,但是每次进行input值的时候就会触发接口调取,

const app =()=>{const handleName = (value) =>{setPage((prev)=>{return {...prev,name:value}});}const handleId = (value) =>{setPage((prev)=>{return {...prev,id:value}});}//查询按钮const handleSearchDemand = () => {getList();}//因为我们每次更改input的值,都会导致pageParams的值发生变化,这就会导致接口调用,但是我们需要再查询的时候才调用,因此需要更改useEffect的监听条件,改为首次进入页面触发,[pageParams] 更改为[]useEffect(() => {getList();}, []);return (<div><Input value={pageParams.name} onChange={handleName}   /><Input value={pageParams.id} onChange={handleId} /><Button onClick={handleResetSearch}>重置</Button><Button type="primary" onClick={handleSearch}>查询</Button></div>)}

重置按钮也需要我们不仅把input的值置为空,并且在置空完成后,需要对接口重新进行调用。

错误代码:

	const handleResetSearch = () =>{setSearchValue((prevData) => ({...prevData,name: '',id: '',}));list();	}

如果我们在这里直接调用list接口,是无法进行同步的接口数据调用的,因为setSearchValue函数是一个异步函数,会导致我们调用接口的时候还是老的值,没有进行重置值。因此还是通过监听input的值的变化来进行接口调用,但是同时我们又不想在input值变化时候立即调用,因为我们可以添加一个中间状态,通过一个中间状态来进行处理。

正确代码:

	//设置一个状态,在点击重置按钮,设置为true,useEffect监听到值变化,我们再设置为false,从而形成一个完美闭环const [resetStatus, setResetStatus] = useState(false);const handleResetSearch = () =>{setSearchValue((prevData) => ({...prevData,name: '',id: '',}));setResetStatus(true);}useEffect(() => {if (resetStatus) {getList();setResetStatus(false);}}, [resetStatus])

这样处理,就可以解决上述问题产生的矛盾,只需要在重置完成后,准确的同步调用列表接口了。

http://www.yayakq.cn/news/250067/

相关文章:

  • 创意灵感网站郑州seo教程
  • 番禺网站建设系统离退休干部网站建设
  • 四川省城乡与建设厅网站首页广州个性化网站开发
  • 金坛企业网站建设公司怎么在雅虎做网站收入
  • 教育公司 网站建设网站 租用服务器
  • wordpress导航栏下拉菜单代码seo专家招聘
  • 湛江专业建网站哪家好wordpress 登录 刷新
  • 网站的推广方式网站建设总结
  • 邢台做网站服务销售管理软件哪个好用
  • 网站建站分辨率wordpress 登录流程
  • 织梦做英文网站辽宁建设工程信息网登录入口
  • 三网合一网站源码下载哈尔滨创寻网站建设
  • 做斗图的网站广告设计制作安装合同
  • 北仑网站制作沈阳网站制作优化推广
  • 网站做导航的地图开发一个app价目表
  • 石家庄服务大型建站项目管理软件app
  • 深圳有做网站的公司660元我的网站百度搜不到
  • 怎么做加盟网站wordpress防止采集
  • 轻云服务器菁英版 多个网站西部数据网站助手
  • 网站建设合同应注意服务网站排名咨询
  • 公司网站建设的目的和意义网站建设数据安全的意义
  • 长沙网站推广排名做竞价网站访问突然变少
  • 上海网站建设开发哪asp.net 网站管理系统
  • 网站访问对应二级域名公式wordpress
  • 做自媒体可以搬运国外网站新闻吗2022年网页游戏排行榜
  • 制作个人业务网站嵌入式软件开发和软件开发的区别
  • 株洲县建设局官方网站扫描网站漏洞的软件
  • 家具网站开发报告html用什么编译器编写
  • 现在什么行业发展前景最好一个新网站怎么做seo
  • html网站设计论文app开发费用