mpvue采坑记(同一个页面或者组件反复进入动态数据被覆盖)

Posted pengzijun

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mpvue采坑记(同一个页面或者组件反复进入动态数据被覆盖)相关的知识,希望对你有一定的参考价值。

该问题出现的issue:https://github.com/Meituan-Dianping/mpvue/issues/140

使用场景:

在使用mpvue开发小程序中,出现同路由复用,使用不同页面的情况。

例如:

进入:首页->商品详情页1(id=1)->(商品详情页的推荐商品列表进入)商品详情页2(id=2)->(商品详情页的推荐商品列表进入)商品详情页3(id=3)

退回:商品详情页3(id=3)<-商品详情页2(id=2)<-商品详情页1(id=1)<-首页

问题分析:

通过打断点分析,同路由下的不同页面,数据data的挂载,是共享的...也就是说用的一直都是同一个data,而不是每个页面拥有一个独立的data

解决方案

使用开源更改后的页面插件包:https://github.com/HelloZJW/mpvue-page-factory

修改使用的mvpue-loader插件以及增加工厂页面插件,

根据mpvue版本修改package.json,详情见修改后的mpvue-loader插件包:https://github.com/jgchenu/mpvue-loader

--package.json

"mpvue-loader": "git+https://github.com/HelloZJW/mpvue-loader.git#patch1.0.x",
"mpvue-page-factory": "^1.0.0",

需要修改 重复使用路由 页面的main.js文件

import pageFactory from ‘mpvue-page-factory‘
import App from ‘./index‘
Page(pageFactory(App))




以上是关于mpvue采坑记(同一个页面或者组件反复进入动态数据被覆盖)的主要内容,如果未能解决你的问题,请参考以下文章

vant weapp采坑记之SwipeCell 滑动单元格无样式、不生效

maven依赖采坑记及依赖分析

微信PC网站支付采坑记-微信Native支付申请接入

Redis适配采坑记

AWS Redshift 采坑记

小程序开发mpvue-entry掘坑记