react常见bug - 查询条件变化,但page未重置为1
2024-09-08 19:06:31
问题1.多次触发请求,且存在潜在的竞态问题
const [page, setPage] = useState(1);
const [keyword, setKeyword] = useState(''); useEffect(() => {
// do request
}, [page, keyword]); useEffect(() => {
setPage(1);
}, [keyword]);
问题2.查询条件变化,但page未重置为1
const [page, setPage] = useState(1);
const [keyword, setKeyword] = useState(''); useEffect(() => {
// do request
}, [page, keyword]);
以上问题的改进方法:推荐使用第三方库:https://ahooks.js.org/zh-CN/hooks/use-pagination
import { usePagination } from 'ahooks'; const [keyword, setKeyword] = useState('');
const { data, loading, pagination } = usePagination(
({ current, pageSize }) => {
return requestXXX();
{
refreshDeps: [keyword],
},
);
最新文章
- Python爬虫爬取豆瓣电影名称和链接,分别存入txt,excel和数据库
- LINQ、Lambda 的转换
- 作业七:团队项目——Alpha版本冲刺阶段-12
- .Net常见错误
- HTML、CSS和JS
- poj3342 Party at Hali-Bula
- .Net需要掌握的知识
- 在备份和导入mysql数据库遇到的几个问题
- java移动/赋值文件 copy/move file
- C#压缩与解压
- LRU算法总结
- IntelliJ配置jenkins服务的Crumb Data
- Java使用线程池
- python内置函数 和模块函数总结
- 便捷的方式在手机上查看Unity3D的Console Log(调试信息 日志)
- mybatis的批量删除操作
- python网页爬虫开发之三
- <;history>; 特别报道:Google离职富翁们都在干什么?
- 菜鸟学Java(五)——JSP内置对象之request
- 最近玩Bootstrap , 一些小工具 记录在案。