其中一些操作, 加载,重置,等是基本相同的,所以我们希望抽离这部分公共逻辑, 这里记录使用hook封装时碰到的一些问题
功能
设置查询参数
设置初始列表值
请求列表,叠加数据
请求列表,重置数据
实现...import React, {
useState,
useCallback,
useRef
} from 'react';
async function asyncVessel...reloadList,
updateQuery
}
return [ list, util ]
}
export default useList
问题1 如何设置及更新请求参数...修改参数后如何更新列表
// setQuery 更新数据是一个异步的过程,通过设置参数后直接调用load,并不可靠
const [ query, setQuery ] = useState...res.result] )
}, [ isEnd, setEnd, setList, requery ]) // setState 函数也在依赖范围内
深入理解:React hooks是如何工作的