丶多想
丶多想
  • 发布:2020-03-17 14:49
  • 更新:2023-12-19 17:53
  • 阅读:2001

【报Bug】uni-app编译成支付宝小程序数据更改视图不更新

分类:uni-app

详细问题描述

<template>  
 <view>  
   <view>{{ obj1.a }}</view>  
   <view>{{ obj2.a }}</view>  
   <view>{{ obj3.a }}</view>  
 </view>  
</template>  
<script>  
const obj2 = { a: 1 };  
const obj3 = { a: 1 };  
export default {  
 data() {  
   return {  
     obj1: { a: 1 },  
     obj2,  
     obj3: null,  
   };  
 },  
 created() {  
   this.obj3 = obj3;  
   setTimeout(() => {  
     this.obj1.a = 2;  
     this.obj2.a = 2;  
     this.obj3.a = 2;  
   }, 1500);  
 },  
};  
</script>  
<style scoped></style>  
 

支付宝小程序延时过后视图上的obj2.a没有更新成2。微信小程序正常

uni-app运行环境说明

cli创建

编译器版本:2.0.0-26120200226003

2020-03-17 14:49 负责人:无 分享
已邀请:
DCloud_UNI_GSQ

DCloud_UNI_GSQ

初步分析是支付宝小程序的bug,你可以写一个支付宝示例(不用uni-app),看是否仍然存在问题。

  • 丶多想 (作者)

    支付宝原生写法尝试了

    this.setData({

    'obj2.a': 2

    })



    this.setData({

    obj2:{a: 2}

    })

    均不存在此问题


    2020-03-18 20:40

  • DCloud_UNI_GSQ

    回复 丶多想: 这俩obj1: { a: 1 }和 obj2:obj2,


    2020-03-18 20:52

  • 丶多想 (作者)

    回复 DCloud_UNI_GSQ: 没懂。。。。你试试看,支付宝原生应该是正常的


    2020-03-19 09:31

  • DCloud_UNI_GSQ

    回复 丶多想: 好的


    2020-03-19 13:34

丶多想

丶多想 (作者)

项目输出到微信和支付宝小程序,感觉bug大多集中数据视图绑定和小程序api的封装上。

DCloud_UNI_GSQ

DCloud_UNI_GSQ

bug 确认,已加分,后续优化
临时解决方案:data方法内不能直接引用外部对象

  • 11月

    这个bug修复了吗? 我这边测试发现,现在在支付宝小程序上依然表现异常。


    2024-03-28 15:35

菜鸟一枚2号

菜鸟一枚2号 - uniapp扩展好难,提问也好难,邮箱不给验证按钮,我怎么验证

为什么我的也不更新,我的是app开发,我就是用的data定义的数据啊

  • DCloud_UNI_GSQ

    发帖详细说明,可以先看下vue文档,是不是类似于不能观测的情况


    2020-04-10 13:05

2***@qq.com

2***@qq.com

这个bug解决了没

y***@163.com

y***@163.com

三年多了, 这个问题还是存在啊

1***@qq.com

1***@qq.com

我也遇到这个问题了,微信小程序正常,支付宝小程序视图点击第一次不更新,需要第二次才会更新,完全不知道怎么解决

要回复问题请先登录注册