React通过redux缓存列表数据以及滑动位置,回退时恢复页面状态

本文介绍了在React和Redux环境中,如何实现从详情页回退到列表页时,列表页能够保持之前的数据和滚动位置。通过安装redux和react-redux,编写action和reducer,结合redux-persist进行数据持久化,保存并恢复列表状态,从而提升用户体验。
摘要由CSDN通过智能技术生成

在使用ReactReact-router实现单页面应用时,会有这样一个场景:从列表页面点击某项条目进入详情页,然后回退至列表页面时,列表页面会重新刷新,不仅数据重新获取了,滚动条也回到了顶部。用户要继续查看剩余数据的话,需要重新滑动到之前点击的那个条目,如果列表做了分页的话就更麻烦了,这对于用户体验来说是非常不好的。

所以我们希望能做到,从二级页面回退至列表页面时,列表页面能保留之前的状态(数据和滚动条位置)。

那么怎么实现呢?下面分享一下React通过redux来缓存列表数据以及滑动位置,以达到保留列表页面状态的方法。

关于redux以及react-redux的使用,这里就不做讲解了,可以参考我之前写的 React-redux的原理以及使用 。当然网络上有很多讲解得更清晰的文章,读者可以自行搜索。

下面直接进入正题,介绍实现需求的步骤吧

1、安装redux以及react-redux

cnpm install redux react-redux -dev --save

2、编写操作列表页面相关数据的action

/**
 * Created by RaoMeng on 2018/12/10
 * Desc: 列表数据缓存
 */

import {CLEAR_LIST_STATE, LIST_STATE} from "../constant
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值