收藏
回答

自定义组件attached中this.data.x无法获取properties值

框架类型 问题类型 终端类型 操作系统 微信版本 基础库版本
小程序 Bug 客户端 3.5.0 2.9.0

Component({

    properties: {

        coinInOrder: {

            type: Object,

            value: {}

        },

        totalPrice: {

            type: Number,

            value: 0

        }

    },

    attached() {

        console.log(this.data);  // console 能看到 coinInOrder 并不是空对象

        console.log(this.data.coinInOrder);  // console 能看到 空对象

    }

});


ps:observer 里面是能看到 coinInOrder 已经被赋值了,可是我想要在attached 使用coinInOrder 和 totalPrice 传进来的值做一些简单的运算,observer 无法满足呀


回答关注问题邀请回答
收藏

4 个回答

  • hexford~🐶
    hexford~🐶
    2018-06-11

    您好,自定义组件中property属性值在attached(包含)之后就可以获取了,data属性在created(包含)之后就可以获取。


    还是有问题的话,麻烦给个相关的代码片段(https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html),我们定位下问题

    2018-06-11
    有用
    回复 4
    • Joshua
      Joshua
      2018-08-25

      发现如果在Page的onLoad和onReady中 setData的话,在自定义组件的attached和ready是获取不了所传的数据。this.data和this.properties都是空对象。

      2018-08-25
      3
      回复
    • Very cold.
      Very cold.
      2019-01-09回复Joshua

      同样遇到这种情况,请问解决没

      2019-01-09
      回复
    • 日暮里
      日暮里
      2019-03-21回复Very cold.

      请问你解决了么?我也遇到了同样的问题

      2019-03-21
      回复
    • united7
      united7
      2019-10-24
      根本没有在attached(包含)之后获取,搞得好郁闷,用完VUE回来才发现这坑是真的大
      2019-10-24
      回复
  • Volcano
    Volcano
    2022-10-25

    求解 2022

    2022-10-25
    有用 1
    回复 1
    • 方日
      方日
      2023-01-17
      2023了,请问大佬解决了吗
      2023-01-17
      1
      回复
  • KEEP DISCIPLINE
    KEEP DISCIPLINE
    2018-06-27

    遇到同样的问题,求解!希望附上代码

    2018-06-27
    有用
    回复 1
    • 日暮里
      日暮里
      2019-03-21

      请问你解决了?我也遇到了同样的问题

      2019-03-21
      回复
  • 谍
    2018-06-10

    这个问题想通了,是因为组件attached和ready的时候 properties的属性还没有被赋值吗? 如果是 我的需求想要对properties的两个属性进行运算得到一个新的值显示在页面上,应该再哪里进行操作?

    2018-06-10
    有用
    回复
登录 后发表内容