微信小程序 picker-view 组件构建一个上下拖动选择器

picker-view是官方的一个选择器组件

支持多级选择 当然也可以单项选择 我们先来看看是个什么东西吧

简单写一个

wxml代码

html 复制代码
<view>
  <picker-view bindchange="pickerChange" style="width: 300rpx; height: 200rpx; font-size: 20px;">
    <!-- picker-view 的子组件 picker-view-column 表示选择器的一列 -->
    <picker-view-column>
      <!-- picker-view-column 的子组件 picker-view-column-item 表示选择器的一项 -->
      <picker-view-column-item>选项1</picker-view-column-item>
      <picker-view-column-item>选项2</picker-view-column-item>
      <picker-view-column-item>选项3</picker-view-column-item>
    </picker-view-column>
    <picker-view-column>
      <picker-view-column-item>选项A</picker-view-column-item>
      <picker-view-column-item>选项B</picker-view-column-item>
      <picker-view-column-item>选项C</picker-view-column-item>
    </picker-view-column>
  </picker-view>
</view>

js定义一个事件

javascript 复制代码
Page({
  data: {
  },
  onLoad: function () {
  },
  pickerChange(e) {
    // 通过 e.detail.value 获取选择器当前选中的索引值
    const value = e.detail.value;
    console.log("选择器的值:", value);
  }
});

然后 界面效果就是这样的

我们可以鼠标往上拖 例如 我们第二个选择B

当我们鼠标拖动后 松开那一刻 pickerChange就会触发

他会给你一个数组 里面就对应你的子项 那么 第一个 还停在第一项 对应下标0 第二个 被我们移动到了 B位置 就是 第二个元素 1下标

然后这里 我们可以通过wx:for 来循环多数据上去

相关推荐
2601_966949651 小时前
如何根据研究的起止时间截取分钟级行情?Python 实战与 QuantDash 数据处理指南
开发语言·python·pandas·量化交易·1024程序员节·股票数据·quantdash
晨曦中的暮雨3 小时前
限流算法——固定窗口、滑动窗口、漏桶、令牌桶
java·开发语言·算法
itmigrate3 小时前
前端项目里,Object.is 并不是 === 的平替
前端
喵了几个咪3 小时前
GoWind CMS 拆解:在 Go 里给 TipTap 搭一套 Yjs 协同后端
开发语言·后端·golang
程序员清风4 小时前
数据处理脚本工程化:日志、配置、命令行与测试
服务器·开发语言·数据库
小大宇4 小时前
Vue知识点6-computed计算属性
前端·javascript·vue.js
程序员海军5 小时前
尤雨溪 : Vue 4 已经在规划中了!
前端·javascript·vue.js
2601_949970695 小时前
HumanizeDuration 跨端三方库仓颉适配全流程
前端·javascript·flutter
2601_962885725 小时前
如何用 Python 把 K 线重采样成任意周期?
开发语言·python
Wang's Blog6 小时前
Java 项目实战: 交友项目 - 圈子功能实现:总结
java·开发语言·交友