微信小程序-子向父传递数据

1.上篇父向子传递数据过程中,点击标题虽然样式进行了改变,但AppData中观察data中的数据并没有改变

 

 

 

 

2.出现以上情况的原因是:

 子组件data数据为空,点击Tabs项切换标题执行handleItemTap方法时,无法拿到data中的数据,

 所以只能从父组件传递过来的数据中拿tabs数据,数据遍历修改之后又把tabs赋值给了子组件的data。

 而存在于父组件中的tabs源数组中的数据并没有被修改,因此在程序中存在两组不同的tabs数据,这是不正确的

 

 3.解决方案

 3.1 点击事件触发的时候,触发父组件中的自定义事件,同时传递数据给父组件,

     此处把点击的索引值传递给父组件

   this.triggerEvent("父组件自定义事件的名称",要传递的参数) 

   

 3.2 子组件向父组件传递数据,通过事件的方式传递,需要在子组件的标签上加入一个自定义事件

        

 

 3.3 父组件在自己的js中,自定义事件,用来接收子组件传递的数据,根据子组件传递过来的索引值,处理tabs的数据

  

 

 4.此时,点击标题切换样式的同时,数据也随着改变了

 

 

  

 

posted @ 2020-05-14 22:26  IT小师妹  阅读(1125)  评论(0编辑  收藏  举报