微信小程序 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 来循环多数据上去

相关推荐
黄交大彭于晏1 天前
UniApp 全局通知功能实现
前端·vue.js·uni-app
sTone873751 天前
Android核心概念(一)minSdkVersion targetSdkVersion compileSdkVersion
android·前端
薛慕昭1 天前
C语言核心技术深度解析:从内存管理到算法实现
c语言·开发语言·算法
林太白1 天前
八大数据结构
前端·后端·算法
一 乐1 天前
流浪动物救助|流浪猫狗救助|基于Springboot+vue的流浪猫狗救助平台设计与实现(源码+数据库+文档)
java·前端·数据库·vue.js·spring boot·毕设
火星数据-Tina1 天前
Python + WebSocket 实现实时体育比分系统(含数据库设计与前端演示)
开发语言·前端
国思RDIF框架1 天前
国思RDIF低代码快速开发框架 v6.2.2版本发布
前端·vue.js·后端
oil欧哟1 天前
Agent 设计与上下文工程- 02 Workflow 设计模式(上)
前端·网络·人工智能
StarkCoder1 天前
GetX 状态管理优化:从 GetBuilder 到 Obx 的性能提升实践
前端
小高0071 天前
深入理解 package.json:前端项目的 "身份证"
前端·javascript·vue.js