vue vant中picker组件的使用


Posted in Javascript onNovember 03, 2020

1、引入

import { Picker } from 'vant'

2、使用

components: {
 vanPicker: Picker,
 }

3、渲染

<van-picker
 show-toolbar
 :columns="columns"
 value-key="text"
 />

4、将值push到columns

//注意的点vant默认的是text,如果你需要修改需要value-key="你要定义的名字",否则不会渲染
 this.columns = [
  {
  siteState: 1,
  text: "装机开业"
  },
  {
  siteState: 2,
  text: "装机停业"
  },
  {
  siteState: 3,
  text: "未装机开业"
  },
  {
  siteState: 4,
  text: "未装机停业"
  },
  {
  siteState: 5,
  text: "其他"
  }
 ];

补充知识:vant-ui之Field输入框和Picker结合使用时,如何绑定正确的id类型的值的问题。

很常见的需求:

表单中的一项,需要从picker控件中选择正确的值后,展示的是字符串,然后提交到后台服务器的则是字符串对应的value类型的值的问题。

vue vant中picker组件的使用

点击表单的档案组,弹出Picker选择组件,选择正确的值,填充到表单项,但是,提交到服务器去,需要提交对应的id,而不是看到的字符串。

如何实现?

实现方式一:

定义两个属性,classId和className, 她两是一 一对应的关系。

data() {
 return {
 classId: -1,
 className: "全部",
 columns: [
 { text: '全部', value: -1 },
 { text: '未分组', value: 0 },
 { text: '访客', value: 1 },
 ],
 },
}

van-field中绑定className

<van-field
  readonly
  clickable
  name="picker"
  :value="className"
  label="档案组"
  placeholder=""
  @click="showClassPicker = true"
 />

然后在van-picker中,绑定的confirm函数,参数获取到的是一个对象。

在这个函数内,同时更新className和classId,保证他俩一 一对应。

<van-popup v-model="showClassPicker" position="bottom">
 <van-picker
 show-toolbar
 :columns="columns"
 @confirm="onClassConfirm"
 @cancel="showClassPicker = false"
 />
 </van-popup>
onClassConfirm(v) {
 this.classId = v.value;
 this.className = v.text;
 this.showClassPicker = false;
 },

这样就可以了。用户在表单中看到的是字符串,而提交给后台的,则是与这个字符串一 一对应的id值。

方式二:

van-field中依然还是使用value类型的值,只是需要给这个值,一个filter过滤器,转换为正确的字符串显示,但是提交给后台的,却是value类型的值,譬如id

以上这篇vue vant中picker组件的使用就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
服务器安全设置的几个注册表设置
Jul 28 Javascript
利用google提供的API(JavaScript接口)获取网站访问者IP地理位置的代码详解
Jul 24 Javascript
读jQuery之二(两种扩展)
Jun 11 Javascript
js判断生效时间不得大于失效时间的思路及代码
Apr 23 Javascript
javascript控制层显示或隐藏的方法
Jul 22 Javascript
javascript实现连续赋值
Aug 10 Javascript
JS实现网页标题随机显示名人名言的方法
Nov 03 Javascript
jQuery与JS加载事件用法分析
Sep 04 Javascript
node中间层实现文件上传功能
Jun 11 Javascript
element ui分页多选,翻页记忆的实例
Sep 03 Javascript
如何基于原生javaScript生成带图片的二维码
Nov 21 Javascript
Ant Design Pro 下实现文件下载的实现代码
Dec 03 Javascript
vue-amap根据地址回显地图并mark的操作
Nov 03 #Javascript
ant-design-vue中tree增删改的操作方法
Nov 03 #Javascript
Vue+Vant 图片上传加显示的案例
Nov 03 #Javascript
vant-ui AddressEdit地址编辑和van-area的用法说明
Nov 03 #Javascript
antd中table展开行默认展示,且不需要前边的加号操作
Nov 02 #Javascript
React Ant Design树形表格的复杂增删改操作
Nov 02 #Javascript
vue缓存之keep-alive的理解和应用详解
Nov 02 #Javascript
You might like
用libtemplate实现静态网页生成
2006/10/09 PHP
php REMOTE_ADDR之获取访客IP的代码
2008/04/22 PHP
在JavaScript中调用php程序
2009/03/09 PHP
纯真IP数据库的应用 IP地址转化成十进制
2009/06/14 PHP
PHP中auto_prepend_file与auto_append_file用法实例分析
2014/09/22 PHP
PHP使用Nginx实现反向代理
2017/09/20 PHP
15款优秀的jQuery导航菜单插件分享
2011/07/19 Javascript
js函数的引用, 关于内存的开销
2012/09/17 Javascript
uploadify在Firefox下丢失session问题的解决方法
2013/08/07 Javascript
JavaScript 开发工具webstrom使用指南
2014/12/09 Javascript
JS版元素周期表实现方法
2015/08/05 Javascript
详解Document.Cookie
2015/12/25 Javascript
Angularjs添加排序查询功能的实例代码
2017/10/24 Javascript
mpvue中使用flyjs全局拦截的实现代码
2018/09/13 Javascript
Python首次安装后运行报错(0xc000007b)的解决方法
2016/10/18 Python
详解Python文本操作相关模块
2017/06/22 Python
python 中random模块的常用方法总结
2017/07/08 Python
python使用筛选法计算小于给定数字的所有素数
2018/03/19 Python
Python3.6通过自带的urllib通过get或post方法请求url的实例
2018/05/10 Python
Python常见数据结构之栈与队列用法示例
2019/01/14 Python
Python 进程之间共享数据(全局变量)的方法
2019/07/16 Python
python 爬取英雄联盟皮肤并下载的示例
2020/12/04 Python
详解基于Facecognition+Opencv快速搭建人脸识别及跟踪应用
2021/01/21 Python
印度最大的酒店品牌网络:OYO Rooms
2016/07/24 全球购物
Java程序员常见面试题
2015/07/16 面试题
教师实习期自我鉴定
2013/10/06 职场文书
大学生求职简历的自我评价
2013/10/21 职场文书
文秘专业应届生求职信范文
2013/11/14 职场文书
博士研究生自我鉴定范文
2013/12/04 职场文书
药剂专业个人求职信范文
2014/04/29 职场文书
安全生产目标管理责任书
2014/07/25 职场文书
运动会搞笑广播稿
2014/10/14 职场文书
法律意见书范本
2015/06/04 职场文书
幼儿园元旦主持词
2015/07/06 职场文书
python 命令行传参方法总结
2021/05/25 Python
mysql性能优化以及配置连接参数设置
2022/05/06 MySQL