微信小程序父子组件传值问题

微信小程序父子组件传值问题

把自己碰到的问题或者学到的东西在这里总结,慢慢积累

在父子组件传值时,我发现子组件竟然拿不到父组件传过来的值。

我指的拿不到父组件的值,是指在子组件的生命周期created、ready、attached等生命周期函数中,子组件获取不到父组件传过来的值。按照正常来说,是可以拿到的。但当父组件传给子组件的值是通过接口获取到的时,这时候就存在异步加载问题了。子组件已经加载完了,然而父组件的值还没获取到,所以就存在这个子组件获取不到父组件的值的。
解决方法:
1、observer监听器
当监听的值发生改变时就会触发这个函数

properties:{
   mydata:{
     type:Array,
     value:[],
     observer:function(mydata){
             var that = this;
              console.log(that.data.mydata)
         }
     }
}

2、setTimeout延时


ready:function(){
       setTimeout(function(){
            console.log( this.data.mydata)
   },1000)
}  //接口返回值的时间有长有短,延时太短还是获取不到父组件传过来的值,延时太长影响用户体验

你可能感兴趣的:(微信小程序,父子组件传值)