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

租服务器发布网站网站建设项目外包网站

租服务器发布网站,网站建设项目外包网站,给个网址2022年能用的,濮阳网站建设网站文章目录 问题描述解决思路引发的问题优化后的代码 问题描述 ios端手机下的h5/小程序#xff0c;滚动到底部时加载更多数据#xff0c;但是滚动到底部时重复触发加载事件#xff0c;在安卓机下则不会发生该问题#xff0c;记录一下解决方案。 解决思路 为了防止下拉事件重… 文章目录 问题描述解决思路引发的问题优化后的代码 问题描述 ios端手机下的h5/小程序滚动到底部时加载更多数据但是滚动到底部时重复触发加载事件在安卓机下则不会发生该问题记录一下解决方案。 解决思路 为了防止下拉事件重复触发对下拉事件做一次防抖处理 import { useState, useRef, useCallback } from react; import debounce from lodash/debounce;const paramPageRef useRef(1) const [searchResult, setSearchResult] useState([]);// 防抖查询const debounceSearch useCallback(debounce(() handleSearch (), 300),[],);// 接口查询数据const handleSearch async () {const params {// 一些参数county: selectedArea.regionName,address: searchKey,...stableParams,currentPage: paramPageRef.current,};try {const res await fuzzySearchByPage(params);console.log(addressSearch---response--, res);if (res.currentPage 1) {setSearchResult(res?.records || []);} else { setSearchResult([...searchResult, ...res?.records]);} setHasMore(res.hasMore )paramPageRef.current 1} catch (err) {console.error(handleSearch----err---, err);}};ScrollRefreshdown{false}pull{false}Lower{() {if (hasMore) {debounceSearch(data)} ;}}/ 引发的问题 以上代码解决了重复触发下拉到底的问题但是使用useCallBack的防抖会形成闭包导致在 handleSearch 方法中取不到最新的 searchResult 从而加载更多时会少加载前一页的数据为了防止这个闭包问题可以通过设置一个新的state,通过监听这个state触发handleSearch方法。 优化后的代码 import { useState, useRef, useCallback } from react; import debounce from lodash/debounce;const paramPageRef useRef(1) const [searchResult, setSearchResult] useState([]); const [page, setPage] useState(1);// 防抖查询const debounceSearch useCallback(debounce(() setPage(paramPageRef.current), 300),[],);useEffect((){console.log(page)if (page !1 ) {handleSearch()}},[page])// 接口查询数据const handleSearch async () {const params {// 一些参数county: selectedArea.regionName,address: searchKey,...stableParams,currentPage: paramPageRef.current,};try {const res await fuzzySearchByPage(params);console.log(addressSearch---response--, res);if (res.currentPage 1) {setSearchResult(res?.records || []);} else { setSearchResult([...searchResult, ...res?.records]);} setHasMore(res.hasMore )paramPageRef.current 1} catch (err) {console.error(handleSearch----err---, err);}};ScrollRefreshdown{false}pull{false}Lower{() {if (hasMore) {debounceSearch()} ;}}/ 如此便可以正常请求了下拉事件在300毫秒内只会触发一次。
http://wiki.neutronadmin.com/news/222178/

相关文章:

  • 找网站的方法京津冀协同发展纲要
  • 关于公司网站建设做it的网站有哪些
  • 做公司门户网站的重点网坛最新排名
  • 网站系统解决方案wordpress最新去底部版权
  • 搭建网站架构是什么意思自建站多少钱
  • 西安做企业网站排名网站改版 信科网络
  • 如何查看网站的空间最好的搜索引擎
  • 太原免费静态网页制作网站手机上怎么做网站创业
  • 南昌专业的学校网站建设公司wordpress用mysql5.6
  • 淘宝上做微请帖的在哪个网站网站备案号怎么修改
  • 大型网站常见问题九一果冻制品厂最新电视
  • 中国四川机械加工网兰州模板网站seo价格
  • html5移动网站制作通常做网站的需求
  • 网站规范建设情况昌宁县住房和城乡建设网站
  • 全国网站建设有实力网站建设开发实训报告总结
  • 网站怎样做银联支付上饶小程序开发公司
  • 打开网站代码怎么写网站开发项目企划书
  • wordpress音乐站主题深圳做网站网络营销公司
  • 大型网站建设建设公司排名中国建设银行对公网站首页
  • 网站建设的成本有哪些内容微信云开发小程序
  • 网站设计素养沈阳男科医院哪家正规的
  • 茶叶网站策划方案分类网站怎么做项目
  • 网站的按钮怎么做 视频惠州建筑信息平台
  • 心理咨询 网站模版凡客诚品商品来源
  • 网站备案信息填写门户手机网站模板
  • 咸宁网站设计通化市城乡建设局网站
  • 金融营销的网站设计案例商城网站建设哪家公司好
  • 宁夏正丰建设集团公司联网站用wordpress仿一个网站
  • app网站开发后台处理我们做网站 出教材 办育心经
  • 百度网站网址是多少网站备案跟做哪个推广有关系吗