微信小程序之 父子组件之间传值

父组件代码:

html:

<tem-mypagebtn type="{{type}}"
                  cardid="{{xs_card.card_id}}" 
                  lid="{{lid}}" 
                  areaid="{{area_id}}" 
                  ismyilinkbox="{{ismyilinkbox}}" 
                  bindmylinkbox="myilinkbox"
  />

js:

//我的 选项是否可见  子组件传过来的事件
  myilinkbox: function (e) {
    // console.log(e);
    this.setData({
      ismyilinkbox: e.detail
    })
    // console.log(this.data.ismyilinkbox);
  },

json:

"tem-mypagebtn": "/components/mypagebtn/mypagebtn",

子组件代码:

html:

<view class="mypagebtn">
  <view class="mypage" bindtap="mypage" wx:if="{{type == 0}}">
    <image src="../../images/mypageicon.png" mode="widthFix" class="mypageicon" />
    <view class="mytxt">我的</view>
  </view>
  <view class="mypage" bindtap="mylinkbox" wx:else>
    <view class="mypagebox">
      <image src="../../images/mypageicon-xs.png" mode="widthFix" class="mypageicon" />
      <view class="mytxt">我的</view>
    </view>
    <view class="myilinkbox" wx:if="{{ismyilinkbox}}">
      <view class="mymingpian" catchtap="mycard" wx:if="{{lid != 0}}">
        <image src="../../images/my-link.png" mode="widthFix" class="myicon" />
        <text class="myilinktxt">生成链接</text>
      </view>
      <view class="mymingpian" catchtap="mypage">
        <image src="../../images/my-info.png" mode="widthFix" class="myicon" />
        <text class="myilinktxt">个人信息</text>
      </view>
    </view>
  </view>
</view>

js:

// components/mypagebtn/mypagebtn.js
Component({
  /**
   * 组件的属性列表
   */
  properties: {
    type: {
      type: Number,
      value: 0
    },
    cardid: {
      type: Number,
      value: 0
    },
    lid: {
      type: Number,
      value: 0
    },
    areaid: {
      type: Number,
      value: 0
    },
    ismyilinkbox: {
      type: Boolean,
      // observer(newVal, oldVal, changePath) { // 监听
      //   console.log(newVal, oldVal, changePath)
      // }
    }
  },

  /**
   * 组件的初始数据
   */
  data: {

  },
  //监听
  // observers: {
  //   'ismyilinkbox' (data) {
  //     console.log(data)
  //   }
  // },
  /**
   * 组件的方法列表
   */
  methods: {
    mypage: function () {
      wx.navigateTo({
        url: '../mypage/mypage'
      })
    },
    mylinkbox: function () {
      // this.setData({
      //   ismyilinkbox: !this.properties.ismyilinkbox
      // })
      this.triggerEvent('mylinkbox', !this.properties.ismyilinkbox)
    },
    mycard: function () {
      wx.navigateTo({
        url: "../mingpian/mingpian?card_id=" + this.properties.cardid + '&lid=' + this.properties.lid + '&areaid=' + this.properties.areaid
      })
    },

  }
})
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值