收藏
回答

用setData()设置某一个对象为空时AppData里面值的问题

问题模块 框架类型 问题类型 API/组件名称 终端类型 微信版本 基础库版本
API和组件 小程序 Bug setData() 客户端 6.7.2 2.0.9

用this.setData({ obj: null})设置某一个对象为空时,页面UI更新了,但是实际的值没有改变!


用this.setData({ obj: null})设置某一个对象为空时,页面UI更新了,但是实际的值没有改变!


用this.setData({ obj: null})设置某一个对象为空时,页面UI更新了,但是实际的值没有改变!


各位开发的同学 你们遇到过这个问题吗?

还是说微信补充了文档,但是我没有看到 - -!


---------------- 补充 ----------------


我在setData前后,打印了那个对象,发现 打印的时候值都是正常改变的,在最后将要使用这个对象的时候打印也是null,但是当我打开AppData


的时候,看到那个已经被我设为null,并且打印出来也是null 的对象还是原来的值,没有改变。



---------------- 好像……貌似解决了 ----------------


在实际运行中的时候,值都是正确的,可能只是AppData显示的问题,实际在用的时候应该没有影响。

邀请回答
复制链接收藏投诉关注问题回答

3 个回答

  • 常龙
    常龙
    2018-09-27

    我用你说的微信版本和基础库版本进行测试,没有发现你说的 Bug

    2018-09-27
    赞同
    回复 1
    • \
      \
      2018-09-27

      可能是偶尔出现,我在出问题那个页面调试,还是有问题,但是我在其他页面测试,值和UI也是正常更新。

      我还在找看有没有可能是其他代码导致的

      2018-09-27
      回复
  • 这都申请了
    这都申请了
    2018-09-27

    是不是有其他地方用等号赋值了

    2018-09-27
    赞同
    回复 3
    • \
      \
      2018-09-27

      我之前也这么想,所以整个js都找了一下,发现没有用等号给它赋值过

      2018-09-27
      回复
    • 这都申请了
      这都申请了
      2018-09-27回复\

      我重新看了一下题目,你是说查看appdata是原来的值是吗?如果是这样的话,应该是bug,很早以前就有这样的问题

      2018-09-27
      回复
    • \
      \
      2018-09-27回复这都申请了

      是的,好像是AppData里面显示的值和实际在运行中的值不一样。


      然后我在AppData改了当前页面的另外一个值,结果会导致运行中的实际值也全部变成了AppData里面显示的值

      2018-09-27
      回复
  • 是柿子啊
    是柿子啊
    2018-09-27

    请提供一下复现问题的简单代码片段(https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html)。

    2018-09-27
    赞同
    回复 1
    • \
      \
      2018-09-27

      好像貌似解决了,this.data里面的值在运行时是正常的,只是AppData里面的显示好像不太对。

      下面的小伙伴说很早以前就有这样的问题的话,那就应该没事了,只要实际运行没有问题就好😂。


      2018-09-27
      回复