小程序vant weapp 封装下拉框

2023-10-29 23:59

本文主要是介绍小程序vant weapp 封装下拉框,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

此文编写于2021-9-14,2022-5-2官方以提供area组件

Vant Weapp 官方已提供 省市区组件@vant/weapp/area/index


 

封装下拉框:

xml:

<van-field label="{{label}}" model:value="{{ value }}" placeholder="{{place}}" border="{{ true }}" readonlyright-icon="{{icon}}" bindtap="tap" />
<van-popup show="{{ popShow }}" position="bottom" custom-style="height: 50%;overflow:hidden"><van-picker value-key="{{valueKeyName}}" id="picker" show-toolbar title="{{label}}" columns="{{ columns }}" bind:cancel="onCancel" bind:confirm="onConfirm" />
</van-popup>

js:

Component({/*** 组件的属性列表*/properties: {label: String, //输入框标签place: String, //输入框提示columns:Array, //选择器 选项valueKeyName:{ //选择器 选项数组中 对象的value的默认keytype:String,value:'text'}},/*** 组件的初始数据*/data: {popShow: false,icon:'arrow-down'  //下拉箭头},/*** 组件的方法列表*/methods: {//点击输入框触发tap() {this.setData({popShow: true,icon:'arrow-up'})},//点击取消onCancel() {this.setData({popShow: false,icon:'arrow-down'})},点击确认onConfirm(e) {let pic, valuepic = this.selectComponent('#picker')//获取当前选中项的值  改值为对象value = pic.getValues()this.setData({value: value[0][this.data.valueKeyName],  //设置输入框为选择器选中的值})this.triggerEvent('confirm', {  //传递到组件外事件 , 返回当前选中项 对象value: value[0]})this.onCancel()}}
})

 呈现效果:

注释:label属性是左边那个'选择区域',placeholder 是 '输入提示',border 是内边框,readonly 输入框只读.  van-popup 弹窗 里面放入了一个选择器,value-key 接收columns的对象数组中的对象中要显示的value的默认key [ vant默认为text ]

使用该组件:

<select-popup label="选择区域" place="请选择区域" columns="{{list}}" bind:confirm="getIndex" valueKeyName="name"></select-popup>

 js:

Page({/*** 页面的初始数据*/data: {list:[{code:'001',name:'武汉'},{code:'002',name:'南京'},{code:'003',name:'北京'},{code:'004',name:'西安'}]},getIndex(e){//打印选中项console.log(e.detail.value);},})

打印结果:

注意:  app.jsonindex.json中引入组件

这篇关于小程序vant weapp 封装下拉框的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/304263

相关文章

python编写朋克风格的天气查询程序

《python编写朋克风格的天气查询程序》这篇文章主要为大家详细介绍了一个基于Python的桌面应用程序,使用了tkinter库来创建图形用户界面并通过requests库调用Open-MeteoAPI... 目录工具介绍工具使用说明python脚本内容如何运行脚本工具介绍这个天气查询工具是一个基于 Pyt

Ubuntu设置程序开机自启动的操作步骤

《Ubuntu设置程序开机自启动的操作步骤》在部署程序到边缘端时,我们总希望可以通电即启动我们写好的程序,本篇博客用以记录如何在ubuntu开机执行某条命令或者某个可执行程序,需要的朋友可以参考下... 目录1、概述2、图形界面设置3、设置为Systemd服务1、概述测试环境:Ubuntu22.04 带图

Python程序打包exe,单文件和多文件方式

《Python程序打包exe,单文件和多文件方式》:本文主要介绍Python程序打包exe,单文件和多文件方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录python 脚本打成exe文件安装Pyinstaller准备一个ico图标打包方式一(适用于文件较少的程

Python程序的文件头部声明小结

《Python程序的文件头部声明小结》在Python文件的顶部声明编码通常是必须的,尤其是在处理非ASCII字符时,下面就来介绍一下两种头部文件声明,具有一定的参考价值,感兴趣的可以了解一下... 目录一、# coding=utf-8二、#!/usr/bin/env python三、运行Python程序四、

无法启动此程序因为计算机丢失api-ms-win-core-path-l1-1-0.dll修复方案

《无法启动此程序因为计算机丢失api-ms-win-core-path-l1-1-0.dll修复方案》:本文主要介绍了无法启动此程序,详细内容请阅读本文,希望能对你有所帮助... 在计算机使用过程中,我们经常会遇到一些错误提示,其中之一就是"api-ms-win-core-path-l1-1-0.dll丢失

SpringBoot后端实现小程序微信登录功能实现

《SpringBoot后端实现小程序微信登录功能实现》微信小程序登录是开发者通过微信提供的身份验证机制,获取用户唯一标识(openid)和会话密钥(session_key)的过程,这篇文章给大家介绍S... 目录SpringBoot实现微信小程序登录简介SpringBoot后端实现微信登录SpringBoo

uniapp小程序中实现无缝衔接滚动效果代码示例

《uniapp小程序中实现无缝衔接滚动效果代码示例》:本文主要介绍uniapp小程序中实现无缝衔接滚动效果的相关资料,该方法可以实现滚动内容中字的不同的颜色更改,并且可以根据需要进行艺术化更改和自... 组件滚动通知只能实现简单的滚动效果,不能实现滚动内容中的字进行不同颜色的更改,下面实现一个无缝衔接的滚动

Java使用WebView实现桌面程序的技术指南

《Java使用WebView实现桌面程序的技术指南》在现代软件开发中,许多应用需要在桌面程序中嵌入Web页面,例如,你可能需要在Java桌面应用中嵌入一部分Web前端,或者加载一个HTML5界面以增强... 目录1、简述2、WebView 特点3、搭建 WebView 示例3.1 添加 JavaFX 依赖3

防止SpringBoot程序崩溃的几种方式汇总

《防止SpringBoot程序崩溃的几种方式汇总》本文总结了8种防止SpringBoot程序崩溃的方法,包括全局异常处理、try-catch、断路器、资源限制、监控、优雅停机、健康检查和数据库连接池配... 目录1. 全局异常处理2. 使用 try-catch 捕获异常3. 使用断路器4. 设置最大内存和线

一文详解如何在Vue3中封装API请求

《一文详解如何在Vue3中封装API请求》在现代前端开发中,API请求是不可避免的一部分,尤其是与后端交互时,下面我们来看看如何在Vue3项目中封装API请求,让你在实现功能时更加高效吧... 目录为什么要封装API请求1. vue 3项目结构2. 安装axIOS3. 创建API封装模块4. 封装API请求