小程序下拉选择van-popup+van-picker的坑,给自己备注的怕忘

想实现的效果是点击车辆颜色弹出下拉选项选择选项后点击确定
返回的属性数据

.wxml

<view class="send-item">
        <van-cell title="车辆颜色" is-link bind:click="showColor" name="color_id">{{ colorsChose }}</van-cell>
        <van-popup show="{{ colorIn }}" bind:close="closeColor" position="bottom" custom-style="height: 50%">
            <van-picker show-toolbar columns="{{ colors }}"  value-key="name" bind:confirm="onConfirm" bind:cancel="onCancel"/>              
        </van-popup>
    </view>

.js

data: {
    //车辆颜色'
    colorIn: false,
    colors: '',
    colors_id: 0,
    colorsChose: '',
  },
  //汽车颜色
  showColor() {
    this.setData({ colorIn: true });
  },
  closeColor() {
    this.setData({ colorIn: false });
  },
  onConfirm(event) {
    this.setData({
      colors_id: event.detail.value.id,
      colorsChose: event.detail.value.name,
      colorIn: false
    });
    //console.log(this.data.colors_id + this.data.colorsChose)
  },
  onCancel() {
    this.setData({ colorIn: false });
  },
  //获取汽车属性
  getAttribute: function () {
    let that = this;
    app.api.car.getAttribute().then(res => {
      that.setData({
        colors: res.data.colors,
      })
      //console.log(this.data.colors)
    });
  },

.json

"usingComponents": {
    "van-field": "@vant/weapp/field/index",
    "van-cell": "@vant/weapp/cell/index",
    "van-cell-group": "@vant/weapp/cell-group/index",
    "van-popup": "@vant/weapp/popup/index",
    "van-picker": "@vant/weapp/picker/index"
  }

备注:
show-toolbar:下拉弹窗的取消和确定按钮的显示,不写不显示
value-key=“name”:数组数据的name值,不写下拉弹窗显示[Object,Object]
参考:参考的是地区联动,给我的提示很大,感谢

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值