前言
最近在做一个移动端项目,项目中包含了滚动列表,点击列表项进入详情修改信息,或修改状态,会造成列表项信息改变,或者会从列表中移除,一直在想一个比较好的方案来处理列表信息的更新,试了记录下滚动条的位置,结果不太理想
最终采用的方案
使用vuex,记录当前项的index,id以及相关参数,从详情页返回列表页时比对当前项的状态是否改变,改变则使用splice方法从列表数据中移除该条数据;未改变则将对应的详情修改成调整后的值。这样列表不用重新请求数据,也能实现静态刷新。
弊端:如果存在多人同时操作同一条数据,因为不发起请求的缘故,则不能获取到最新的列表数据信息。会造成信息不同步的问题。故需依照实际需求,确定是否发起请求来刷新列表数据。
如大佬有更好的方案,欢迎在评论区留言,大家一起学习进步!