收藏
回答

页面给组件传值的问题

问题模块 框架类型 问题类型 API/组件名称 终端类型 微信版本 基础库版本
API和组件 小程序 Bug 自定义组件 客户端 7.0.4 2.7.0

- 当前 Bug 的表现(可附上截图)


- 预期表现 页面给组件的index属性传了一个值为8,然后在组件的attached生命周期里,答应了this.data这个对象,见图上的打印结果。没展开这个对象前,index的值为0,展开后,里面显示index的值为8。但是单独打印this.data.index的值还是为0。为什么展开this.data里面index的值为8?


- 复现路径


- 提供一个最简复现 Demo


最后一次编辑于  05-22  (未经腾讯允许,不得转载)
回答关注问题邀请回答
收藏

2 个回答

  • 戴文亮
    戴文亮
    05-23

    因为 this.data.index 是一个值,而 this.data 是一个对象的引用,你打印 this.data.index 的时候,index 是 0,后来你改了 index,this.data 里自然就改了,你可以把第二行改成 console.log(JSON.stringify(this.data)) 看看结果就知道了

    05-23
    赞同 1
    回复
  • 娇华
    娇华
    05-23

    你好,麻烦提供能复现问题的代码片段(https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html)

    05-23
    赞同
    回复 3
    • macho
      macho
      05-23

      https://developers.weixin.qq.com/s/BgFqYzmP7S8k

      05-23
      回复
    • 娇华
      娇华
      05-23回复macho

      这里提的是工具的问题吧,真机测试是正常的,使用的工具版本是?

      05-23
      回复
    • macho
      macho
      05-23回复娇华

      我用真机调试,两个值也不统一呀,打印this.data,这个对象里面index的值为8,打印this.data.index的值为0。开发者工具版本为Stable v1.02.1904090

      05-23
      回复