iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >微信小程序选择器组件picker怎么使用
  • 476
分享到

微信小程序选择器组件picker怎么使用

2023-07-05 08:07:36 476人浏览 八月长安
摘要

本篇内容介绍了“微信小程序选择器组件picker怎么使用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!picker组件的定义picker组件

本篇内容介绍了“微信小程序选择器组件picker怎么使用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

picker组件的定义

picker组件是一种从底部向上弹起的滚动选择器。

picker组件的类型

在官方文档中,有提供五种类型的picker组件,如普通选择器,多列选择器,时间选择器,日期选择器和省市区选择器。

微信小程序选择器组件picker怎么使用

(猜测是,这些选择器时不同的且常用的某种类型,于是就产生固定的模版)。

而在写法上是这么写滴, <picker mode="multiSelector" 其他属性>

picker属性

picker组件需要记录当前选择,选择的可允许范围等等,而这些都是picker的一些相关的属性。

共同的属性

  • picker为用户提供了多个选择,但用户要从中选中其中一个,value就这样记载了用户当前选到的值。(它会初始化选择器的值)

  • picker为用户提供了多个选择,但有时为了构造选择器内容的方便,picker可能会提供超出服务方所能服务到的实际范围,于是在一些选择器中,可以用一些属性来限制用户的选择,使其定到实际范围内。

    • 比如在时间选择器time中start表示一天内有效范围的开始,而end属性表示一天内有效时间范围内的结束。举个例子,拔牙建议是在早上来拔,如果写一个拔牙的预约系统,则可以用end="12:00"来限定结束时间。

  • picker为用户提供了多个选择,用户选了其中一种,但仍是需要有东西去告诉后台用户选了什么。于是就有了bindchange,代表说当用户选择了原选择不同的选择时,会触发的相应的函数。

    • 因为微信小程序使用了数据绑定的技术,所以一般bindchange会修改在js文件里面对应的值。

    • 数据绑定技术可以简单理解成一种从wxml文件获取到js文件中数据域中的某个数据的技术,如{{data}}

时间选择器time

微信小程序选择器组件picker怎么使用

微信小程序选择器组件picker怎么使用

wxml

<view class="section">    <h3>时间选择器</h3>    <picker mode="time" value = "{{Time}}" start="9:00" end="12:00" bindchange="bind_ChangeTime">         {{Time}}    </picker></view>

js文件

Page({  data:{    Time:"9:00"  },  bind_ChangeTime:function(e){      console.log(e.detail.value)      this.setData({        Time:e.detail.value      })  }})

wxss

page{  background-color: navy;}.section{  text-align: center;}.section_title{  display:flexbox;  font-family:'Times New Roman', Times, serif;  color: aliceblue;}.section_picker{background-color: white;}

补充:遇到的问题

问题说在前面,同一个页面使用多个普通选择器遇到了问题,选择一个选项,其他选项也跟随着改变了。

代码如下:

//picker.wxml:   <view class="column_list" >        <text class="font15">选项一</text>        <picker class="inputText" bindchange="bindchange1" value="{{index}}" range="{{option1}}">            <view class="select_picker">                {{option1[index]}}                <image  mode="aspectFit"  class="select_arrow" src="../../images/select_arrow.png"></image>            </view>        </picker>    </view>    <view class="column_list" >        <text class="font15">选项二</text>        <picker class="inputText" bindchange="bindchange1" value="{{index}}" range="{{option2}}">            <view class="select_picker">                {{option2[index]}}                <image  mode="aspectFit"  class="select_arrow" src="../../images/select_arrow.png"></image>            </view>        </picker>    </view>    <view class="column_list" >        <text class="font15">选项三</text>        <picker class="inputText" bindchange="bindchange1" value="{{index}}" range="{{option3}}">            <view class="select_picker">                {{option3[index]}}                <image  mode="aspectFit"  class="select_arrow" src="../../images/select_arrow.png"></image>            </view>        </picker>    </view>
//picker.js    Page({    data: {        index:0,//设置索引值默认为0        option1: ['1', '2', '3','4','5'],        option2: ['一', '二', '三','四','五'],        option3: ['①', '②', '③','④','⑤'],    },    bindchange1:function (e) {       // console.log('picker发送选择改变,携带值为', e.detail.value)       // 设置这个携带值赋值给索引值index       // 所以option1 ,option2 ,option3的索引值都是一样的        this.setData({            index: e.detail.value        })    }})

因为默认索引值(也叫“下标”)都是index,绑定事件也只是改变了index。所以改变一个选项,其他选项都跟着改变了。

如何解决

首先想到的解决办法就是自定义不同的索引值index1、index2,、index3,分别绑定不同的时间bindchange1、bindchange2、bindchange3改变

其对应的索引值。

代码如下:

//picker.wxml:  <view class="column_list" >        <text class="font15">选项一</text>        <picker class="inputText" bindchange="bindchange1" value="{{index1}}" range="{{option1}}">            <view class="select_picker">                {{option1[index1]}}                <image  mode="aspectFit"  class="select_arrow" src="../../images/select_arrow.png"></image>            </view>        </picker>    </view>    <view class="column_list" >        <text class="font15">选项二</text>        <picker class="inputText" bindchange="bindchange2" value="{{index2}}" range="{{option2}}">            <view class="select_picker">                {{option2[index2]}}                <image  mode="aspectFit"  class="select_arrow" src="../../images/select_arrow.png"></image>            </view>        </picker>    </view>    <view class="column_list" >        <text class="font15">选项三</text>        <picker class="inputText" bindchange="bindchange3" value="{{index3}}" range="{{option3}}">            <view class="select_picker">                {{option3[index3]}}                <image  mode="aspectFit"  class="select_arrow" src="../../images/select_arrow.png"></image>            </view>        </picker>    </view>
    // picker.js    Page({    data: {        index1:0,        index2:0,        index3:0,        option1: ['1', '2', '3','4','5'],        option2: ['一', '二', '三','四','五'],        option3: ['①', '②', '③','④','⑤'],    },    bindchange1:function (e) {        this.setData({            index1: e.detail.value        })    },    bindchange2:function (e) {        this.setData({            index2: e.detail.value        })    },    bindchange3:function (e) {        this.setData({            index3: e.detail.value        })    }})

这样一个页面多个picker的问题就解决了,但是现在又发现了一个新的问题:

为什么多个picker会出现相互影响的问题?比如在第一个选择器选择了3,剩下的选择器点进去默认都是从第3个开始?” 小程序开发工具中的确存在,看了社区的帖子,才知道这个是官方的bug,目前还没有修复。

“微信小程序选择器组件picker怎么使用”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注编程网网站,小编将为大家输出更多高质量的实用文章!

--结束END--

本文标题: 微信小程序选择器组件picker怎么使用

本文链接: https://www.lsjlt.com/news/350498.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 微信小程序选择器组件picker怎么使用
    本篇内容介绍了“微信小程序选择器组件picker怎么使用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!picker组件的定义picker组件...
    99+
    2023-07-05
  • 微信小程序选择器组件picker简单入门
    目录picker组件的定义picker组件的类型picker属性共同的属性时间选择器time参考补充:遇到的问题总结picker组件的定义 picker组件是一种从底部向上弹起的滚动...
    99+
    2023-03-02
    微信小程序picker 微信小程序 选择器 小程序选择器
  • 微信小程序picker选择器怎么实现
    本篇内容主要讲解“微信小程序picker选择器怎么实现”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“微信小程序picker选择器怎么实现”吧!picker选择器分为三种,普通选择器,时间选择器,...
    99+
    2023-06-26
  • 微信小程序picker多列选择器怎么用
    本篇内容主要讲解“微信小程序picker多列选择器怎么用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“微信小程序picker多列选择器怎么用”吧!vue-next-admin,这是基于 vue3...
    99+
    2023-06-08
  • 微信小程序picker多列选择器(mode = multiSelector)
    目录一、效果图(多列)二、普通选择器:mode = selector、多列选择器:mode = multiSelector三、app.json四、picker.wxml五、picke...
    99+
    2022-11-12
  • 在微信小程序使用picker实现日期选择
    微信小程序开发项目中,或多或少要使用时间选择器picker实现日期选择。选择开始日期和结束日期 而且选择开始时间后,选择结束时间,能够选择的日期不能比开始日期还要早。要实现以上效果可这样写: 在wxml中写 ...
    99+
    2023-08-25
    微信小程序 小程序 前端
  • 微信小程序自定义时间段picker选择器
    本文实例为大家分享了微信小程序自定义时间段picker选择器的具体代码,供大家参考,具体内容如下 想实现一个可以选择年份和时间段的日期选择器,如下所示 微信小程序自带的picker...
    99+
    2022-11-13
  • 微信小程序的表单组件picker-view怎么用
    这篇文章主要介绍“微信小程序的表单组件picker-view怎么用”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“微信小程序的表单组件picker-view怎么用”文章能帮助大家解决问题。picker...
    99+
    2023-06-26
  • 微信小程序中怎么实现一个picker多列选择器
    微信小程序中怎么实现一个picker多列选择器,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。一、效果图(多列)二、普通选择器:mode = selector、多列选择器:m...
    99+
    2023-06-20
  • 微信小程序中picker-view组件有什么用
    这篇文章给大家分享的是有关微信小程序中picker-view组件有什么用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。实现效果图:嵌入页面的滚动选择器属性名类型默认值说明valu...
    99+
    2022-10-19
  • 微信小程序选择器怎么用
    这篇文章主要介绍“微信小程序选择器怎么用”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“微信小程序选择器怎么用”文章能帮助大家解决问题。页面结构<!--pages/warn/index.wxml...
    99+
    2023-06-26
  • 微信小程序使用picker组件出现问题怎么解决
    本篇内容主要讲解“微信小程序使用picker组件出现问题怎么解决”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“微信小程序使用picker组件出现问题怎么解决”吧!一、picker基本概念先来看一...
    99+
    2023-07-04
  • 微信小程序如何实现picker组件下拉框选择input输入框
    这篇文章主要介绍微信小程序如何实现picker组件下拉框选择input输入框,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!实现效果图:页面<view class=&q...
    99+
    2022-10-19
  • 微信小程序怎么使用picker实现时间和日期选择框功能
    这篇文章主要介绍微信小程序怎么使用picker实现时间和日期选择框功能,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!具体如下:1、效果展示2、关键代码① index.wxml<...
    99+
    2022-10-19
  • 微信小程序picker选择器获取值的方法有哪些
    这篇文章主要介绍了微信小程序picker选择器获取值的方法有哪些的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇微信小程序picker选择器获取值的方法有哪些文章都会有所收获,下面我们一起来看看吧。想要实现的效果...
    99+
    2023-07-05
  • 微信小程序使用picker组件出现的问题探究
    目录一、picker基本概念二、遇到的问题三、如何解决四、延伸五、效果图一、picker基本概念 先来看一下官方文档中picker的基本概念: 从底部弹起的滚动选择器,现支持三种选择...
    99+
    2023-01-12
    小程序picker组件 小程序picker 微信小程序picker
  • 微信小程序多项选择器checkbox怎么使用
    这篇文章主要介绍“微信小程序多项选择器checkbox怎么使用”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“微信小程序多项选择器checkbox怎么使用”文章能帮助大家解决问题。第一的话就是我们的相...
    99+
    2023-07-02
  • 微信小程序picker选择器获取值的2种方法示例
    目录想要实现的效果:第一种方法:第二种方法:获取到的value值是对应的picker数组的下标值,这样根据获得到的下标获得相对应的值总结想要实现的效果: 在选择器选择合适的选项后,...
    99+
    2023-03-02
    微信小程序picker获取选择内容 微信小程序picker 小程序选择器
  • 微信小程序switch开关选择器怎么用
    这篇文章将为大家详细讲解有关微信小程序switch开关选择器怎么用,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。具体内容如下效果图WXML<view cl...
    99+
    2022-10-19
  • 使用原生小程序组件Picker自定义日期时间选择器
    使用原生小程序组件Picker自定义日期时间选择器 1、 Picker简单介绍 可以看到Picker类型有5种, 具体可以查看微信开放文档 picker。 Picker(选择器)是一种常见的用户界面控...
    99+
    2023-09-14
    小程序
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作