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 官方文档

相关推荐
Quke陆吾1 小时前
Vue框架1(vue搭建方式1,vue指令,vue实例生命周期)
前端·javascript·vue.js
苹果酱05671 小时前
Java设计模式:探索编程背后的哲学
java·vue.js·spring boot·mysql·课程设计
Oscar_02082 小时前
uniapp+ts 多环境编译
前端·vue.js·typescript·uni-app
EndingCoder2 小时前
从零基础到最佳实践:Vue.js 系列(9/10):《单元测试与端到端测试》
前端·javascript·vue.js·性能优化·单元测试·vue3
How_doyou_do2 小时前
Vue-创建应用/挂载应用/根组件模版-.vue单文件/应用配置
前端·javascript·vue.js
王者鳜錸3 小时前
Vue3集成Element Plus完整指南:从安装到主题定制下-实现后台管理系统框架搭建
前端·javascript·vue.js
Stringzhua4 小时前
初识Vue【1】
javascript·vue.js·ecmascript
小镇学者5 小时前
【JS】Vue 3中ref与reactive的核心区别及使用场景
前端·javascript·vue.js
2301_808913837 小时前
如何把vue项目部署在nginx上
javascript·vue.js·ecmascript
Lhuu(重开版7 小时前
Vue:axios(GET请求)
前端·javascript·vue.js