vant picker选择器自定义选项内容

5 篇文章 0 订阅

前言

项目中遇到需要在选择器中展示多行数据,这里需要用到picker的自定义选项内容。
在这里插入图片描述

代码

<template>
  <div class="app-container">
    <van-nav-bar :title="navTitle" />
    <section>
      <van-form @submit="onSubmit">
        <van-field
          readonly
          clickable
          name="picker"
          :value="value"
          label="选择器"
          placeholder="点击选择"
          @click="showPicker = true"
        />
        <van-popup v-model="showPicker" position="bottom">
          <van-picker
            show-toolbar
            :columns="columns"
            value-key="name"
            item-height="56px"
            @confirm="onConfirm"
            @cancel="showPicker = false"
          >
            <template #option="option">
              <div style="display: flex; flex-direction: column; align-items: center;">
                <div>姓名:{{ option.name }}</div>
                <div>年龄:{{ option.age }}</div>
              </div>
            </template>
          </van-picker>
        </van-popup>
        <div style="margin: 16px;">
          <van-button round block type="info" native-type="submit">提交</van-button>
        </div>
      </van-form>
    </section>
  </div>
</template>

<script>
export default {
  name: 'Form',
  data() {
    return {
      navTitle: '表单',
      value: '',
      columns: [{
        name: '张三',
        age: 18
      }, {
        name: '李四',
        age: 19
      }],
      showPicker: false
    }
  },
  methods: {
    onConfirm(value) {
      this.value = value
      this.showPicker = false
    },
    onSubmit(values) {
      console.log('submit', values)
    }
  }
}
</script>

<style lang="less" scoped>
  section {
    padding: 20px;
  }
</style>

效果图

在这里插入图片描述

  • 2
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 8
    评论
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值