发现一个navigator页面后退的bug
发布于 7 年前 作者 luoming 4788 次浏览 来自 官方Issues

有两个页面A(page/a?id=1)、B(page/a?id=2),都有初始变量test为0,

当用navigator (open-type为默认值)先打开一个A页面,在A页面里再通用navigator打开B页面

在B页面进行操作(如把其中的test值设置为2),然后后退,再在A页面获取test时,会发现不是初始值0,而是2

如果先打开A页面并在A页面把test值设置为2,再打开B页面,则B页面的test值是0,正常的。

3 回复

试了下没发现有问题,你最好弄个代码片段

好像是wepy框架(1.x,我用的是1.7.2)的bug,用原生的确没有问题,附上简单的测试代码

复现方法:打开当前页A后,再点里面的链接跳转到另一个页面B,然后点击按钮,数字增加到2,后退回A,在页面点击按钮,会发现数字直接是3

<template>
    <view>
        <view [@tap](/user/tap)="add" style="width:300rpx;background:#ccc">点击计数</view>
        当前按钮点击数:<text>{{count}}</text>
 
        <navigator url="/pages/test?id=2" style="color:#00cc00">链接跳转</navigator>
    </view>
</template>
 
<script>
import wepy from 'wepy';
 
export default class Index extends wepy.page {
    config = {}
 
    data = {
        count: 0
    }
 
    methods = {
        add() {
            this.count++;
        }
    }
 
    onLoad() {}
 
}
</script>
回到顶部