背景ReactHooks推出快一年了,改变了我们的开发方式,受到越来越多开发者的喜爱。我们在开发过程中一般会写一些自定义的Hooks,下面分享4个比较实用的,希望对大家有所启发。正文1.useTimer一般理解为时间处理,我们都习惯使用moment:importmomentfrom'moment'//...consttimeRender=time=>moment(time).format('HH:mmDD/MM/YYYY')//...但是这个库的体量还是比较大的:一般我们只使用格式化函数,所以我们自己封装一个useTimer就可以了:很实用。2.函数useInterval也很常用。每隔一段时间执行一次,可用于实现倒计时等功能。代码:3.useGeo有时候我们需要获取经纬度信息,比如实现定位功能。每次单独写不是很优雅,可以封装一下:获取信息的过程是异步的,所以对外暴露了isLoading和error这两个属性,使得处理更加灵活。这样一来,我们就可以很方便的获取到自己需要的位置信息,非常实用。4.usePrefetchHook可以通过延迟加载过滤掉主模块中不需要的模块,帮助您减少加载时间,使您的应用程序渲染和响应更快。例如,我们有一个页面,点击一个按钮后会出现一个弹出窗口。很多时候,我们定义一个Modal组件,导入它,放到Render函数中,使用Visible等一些属性来控制它。例如:importBigModalfrom'./BigModal'//...
