微信小程序父子通讯、传值 triggerEvent

一、父组件给子组件传值

分三步
1父组件定义变量;
2父组件传递变量;
3子组件接收变量;

一、定义、传递变量

Page({
  data: {
    tabsList:[
      { id:1, name:'一一', isActive:true, },
      { id:2, name:'二二', isActive:false, },
      { id:3, name:'三三', isActive:false, },
      { id:4, name:'四四', isActive:false, }
    ]
  },
})
// 传递变量
<Tabs tabsList="{{tabsList}}"></Tabs>

三、子组件接收、使用变量

Component({
  properties: { // properties 接受一个 Object 类型的参数。
    tabsList:{
      type:Array,
      value:[],
    }
  },
})
// 使用变量
<view wx:for="{{tabsList}}" wx:key="id" >
  {{item.name}}
</view>

properties 定义 微信文档传送

定义段类型是否必填描述 最低版本
type属性的类型
optionalTypesArray属性的类型(可以指定多个)
value属性的初始值
observerFunction属性值变化时的回调函数

二、子组件向父组件传值 triggerEvent

  • 重点在于父组件传递给子组件的方法名称要加上
    【bind父组件提供的方法名称】
  • 子组件调用时 需要 this.triggerEvent(’【父组件提供的方法名称】’,参数)

this.triggerEvent(‘myevent’, myEventDetail, myEventOption)

一、父组件定义函数方法A

Page({
  data: {},
  // 定义函数方法
  fn1(e){
    const { active, } = e.detail;
  }
})
// 父组件传递 注意**
<Tabs bindFn2="fn1"></Tabs>

三、子组件调用、并传入参数

<button bindtap="tabclick">点击传参</button>
// 子组件调用自己的方法
Component({
  methods: {
    tabclick(){
      const active = {}; // 参数 
      this.triggerEvent('Fn2',{ active, }) // 传入参数
    }
  }
})
  • 2
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值