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 相关文章推荐
屏蔽鼠标右键、Ctrl+n、shift+F10、F5刷新、退格键 的javascript代码
Apr 01 Javascript
jQuery 隔行换色 支持键盘上下键,按Enter选定值
Aug 02 Javascript
框架页面高度自动刷新的Javascript脚本
Nov 01 Javascript
node.js中的fs.writeFile方法使用说明
Dec 14 Javascript
jquery获取当前日期的方法
Jan 14 Javascript
WEB前端开发都应知道的jquery小技巧及jquery三个简写
Nov 15 Javascript
Angular实现类似博客评论的递归显示及获取回复评论的数据
Nov 06 Javascript
Vue项目部署的实现(阿里云+Nginx代理+PM2)
Mar 26 Javascript
bootstrap table列和表头对不齐的解决方法
Jul 19 Javascript
vue利用全局导航守卫作登录后跳转到未登录前指定页面的实例代码
May 19 Javascript
javascript操作向表格中动态加载数据
Aug 27 Javascript
React服务端渲染原理解析与实践
Mar 04 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
Home Coffee Roasting
2021/03/03 咖啡文化
PHP异步调用socket实现代码
2012/01/12 PHP
php获取网页中图片、DIV内容的简单方法
2014/06/19 PHP
PHP中一些可以替代正则表达式函数的字符串操作函数
2014/11/17 PHP
ThinkPHP框架下微信支付功能总结踩坑笔记
2019/04/10 PHP
javascript 获取网页参数系统
2008/07/19 Javascript
JAVASCRIPT keycode总结
2009/02/04 Javascript
基于jquery的web页面日期格式化插件
2011/11/15 Javascript
学习从实践开始之jQuery插件开发 对话框插件开发
2012/04/26 Javascript
js弹出层(jQuery插件形式附带reLoad功能)
2013/04/12 Javascript
js浮动图片的动态效果
2013/07/10 Javascript
3分钟写出来的Jquery版checkbox全选反选功能
2013/10/23 Javascript
js使下拉列表框可编辑不止是选择
2013/12/12 Javascript
jQuery实现鼠标经过图片预览大图效果
2014/04/10 Javascript
初识Node.js
2014/09/03 Javascript
Angular实现类似博客评论的递归显示及获取回复评论的数据
2017/11/06 Javascript
封装一下vue中的axios示例代码详解
2020/02/16 Javascript
原生JS实现弹幕效果的简单操作指南
2020/11/10 Javascript
Python的Django应用程序解决AJAX跨域访问问题的方法
2016/05/31 Python
python 列表递归求和、计数、求最大元素的实例
2018/11/28 Python
解决vscode python print 输出窗口中文乱码的问题
2018/12/03 Python
Python 3.x基于Xml数据的Http请求方法
2018/12/28 Python
Python图像处理之颜色的定义与使用分析
2019/01/03 Python
十个Python练手的实战项目,学会这些Python就基本没问题了(推荐)
2019/04/26 Python
Python二进制文件读取并转换为浮点数详解
2019/06/25 Python
pandas中read_csv、rolling、expanding用法详解
2020/04/21 Python
哈工大自然语言处理工具箱之ltp在windows10下的安装使用教程
2020/05/07 Python
快时尚眼镜品牌,全国连锁眼镜店:LOHO眼镜生活
2018/10/08 全球购物
几个常见的消息中间件(MOM)
2014/01/08 面试题
仓库班组长岗位职责
2013/12/12 职场文书
教师应聘自荐信范文
2014/03/14 职场文书
新闻报道策划方案
2014/06/11 职场文书
员工辞职信范文大全
2015/05/12 职场文书
冰雪公主观后感
2015/06/16 职场文书
springboot入门 之profile设置方式
2022/04/04 Java/Android
Linux中各个目录的作用与内容
2022/06/28 Servers