uni-app 内置组件:PickerView

picker-view 是嵌入页面的滚动选择器。

API

以下是 picker-view 组件的 API 介绍:

属性列表

  • value:数组,表示选择了 picker-view 中的哪一项(下标),每一列的选择项下标数组。
  • indicator-style:设置选择器中间选中框的样式。
  • indicator-class:设置选择器中间选中框的类名。
  • mask-style:设置蒙层的样式。
  • mask-class:设置蒙层的类名。

事件列表

  • change:当滚动选择时,触发 change 事件,event.detail = {value: value},其中 value 为数组,表示选择了数组中的哪个项(下标)。

示例

以下是 picker-view 组件在页面中的使用示例:

html 复制代码
<view class="picker-view">
  <picker-view indicator-style="height: 50px;" class="picker-view" value="{{value}}" bindchange="bindChange">
    <picker-view-column>
      <view v-for="(item, index) in years" :key="index">{{item}}年</view>
    </picker-view-column>
    <picker-view-column>
      <view v-for="(item, index) in months" :key="index">{{item}}月</view>
    </picker-view-column>
    <picker-view-column>
      <view v-for="(item, index) in days" :key="index">{{item}}日</view>
    </picker-view-column>
  </picker-view>
</view>

JavaScript 部分:

javascript 复制代码
export default {
  data() {
    return {
      years: ['2019', '2020', '2021', '2022'],
      months: ['01', '02', '03', '04'],
      days: ['01', '02', '03', '04', '05'],
      value: [0, 1, 2], // 默认选中的每一列的数组下标
    };
  },
  methods: {
    bindChange: function(e) {
      const val = e.detail.value
      this.value = val
    }
  }
}

在这个示例中,picker-view 创建了一个日期选择器,包含年、月、日三列数据,用户可以通过滚动每列来选择一个日期。当用户选中某一列的值时,会触发 bindChange 方法,更新 value 数组中对应列的下标。

更详细的内容请参考最新的 uni-app 官方文档

相关推荐
前端Hardy1 小时前
别再手动写 loading 了!封装一个自动防重提交的 Hook
前端·javascript·vue.js
前端Hardy1 小时前
前端如何实现“无感刷新”Token?90% 的人都做错了
前端·javascript·vue.js
SuperEugene1 小时前
Vue Router 实战规范:path/name/meta 配置 + 动态 / 嵌套路由,统一团队标准|状态管理与路由规范篇
开发语言·前端·javascript·vue.js·前端框架
小彭努力中2 小时前
194.Vue3 + OpenLayers 实战:动态位置 + 高度 + 角度,模拟卫星地面覆盖范围
前端·css·vue.js·openlayers·animate
前端Hardy2 小时前
纯 HTML/CSS/JS 实现的高颜值登录页,还会眨眼睛!少女心爆棚!
前端·javascript·vue.js
miss2 小时前
Vue2 → Vue3 深度对比:8 大核心优化,性能提升 2 倍
前端·vue.js·架构
angerdream3 小时前
最新版vue3+TypeScript开发入门到实战教程之生命周期函数
javascript·vue.js
胖橘3 小时前
适用于Vue3的高集成度文件预览组件,支持多种类型的文件
前端·vue.js·开源
啊丫丫3 小时前
【深入浅出地学习Vue】——vue2
前端·vue.js
终端鹿4 小时前
Pinia 与 Vue Router 权限控制实战(衔接Pinia基础篇)
前端·javascript·vue.js