如题,
使用 react-router
每次浏览器前进和后退时,都会触发组件的componentDidMount
,然后重新获取数据。
本来在一个列表页,使用『下拉加载更多』功能都加载了好几页数据了。然后点击某一项,进入详情页面。然后再后退,就触发了列表页组件的componentDidMount
,然后就又重新获取数据了。
何解?
如题,
使用 react-router
每次浏览器前进和后退时,都会触发组件的componentDidMount
,然后重新获取数据。
本来在一个列表页,使用『下拉加载更多』功能都加载了好几页数据了。然后点击某一项,进入详情页面。然后再后退,就触发了列表页组件的componentDidMount
,然后就又重新获取数据了。
何解?
可以试一下我造的轮子 https://github.com/fi3ework/r...
完全兼容 react-router-v4
在指定的路径下隐藏(缓存),返回时显示(取出缓存),在其他路径下正常卸载,并且能够恢复滚动位置。
4 回答1.6k 阅读
2 回答1k 阅读✓ 已解决
2 回答2.6k 阅读
1 回答919 阅读✓ 已解决
1 回答653 阅读✓ 已解决
2 回答806 阅读✓ 已解决
2 回答960 阅读
hello!
针对你这样的需求,可以在首次render组件时将获取的数据存在state中,在componentDidMount判断该数据的长度
> 0 ?
,从而决定是否要fetch数据。