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 相关文章推荐
Javascript 面向对象 对象(Object)
May 13 Javascript
JavaScript基础语法让人疑惑的地方小结
May 23 Javascript
Jquery AJAX POST与GET之间的区别
Nov 14 Javascript
jquery如何获取复选框的值
Dec 12 Javascript
一行命令搞定node.js 版本升级
Jul 20 Javascript
hovertree插件实现二级树形菜单(简单实用)
Dec 28 Javascript
es6学习笔记之Async函数基本教程
May 11 Javascript
实例详解Node.js 函数
Jun 10 Javascript
小程序开发基础之view视图容器
Aug 21 Javascript
vue中v-for循环给标签属性赋值的方法
Oct 18 Javascript
js瀑布流布局的实现
Jun 28 Javascript
javascript实现倒计时关闭广告
Feb 09 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
三国漫画《火凤燎原》宣布动画化PV放出 预计2020年播出
2020/03/08 国漫
php中数字、字符与对象判断函数用法实例
2014/11/26 PHP
在Laravel中使用DataTables插件的方法
2018/05/29 PHP
JavaScript使用技巧精萃[代码非常实用]
2008/11/21 Javascript
js获取TreeView控件选中节点的Text和Value值的方法
2012/11/24 Javascript
网页加载时页面显示进度条加载完成之后显示网页内容
2012/12/23 Javascript
纯JavaScript实现HTML5 Canvas六种特效滤镜示例
2013/06/28 Javascript
JavaScript之IE的fireEvent方法详细解析
2013/11/20 Javascript
javascript数组去重小结
2016/03/07 Javascript
jQuery实现的自适应焦点图效果完整实例
2016/08/24 Javascript
jquery结合html实现中英文页面切换
2016/11/29 Javascript
简单实现IONIC购物车功能
2017/01/10 Javascript
JS实现图片手风琴效果
2020/04/17 Javascript
layui中的switch开关实现方法
2019/09/03 Javascript
js实现多图和单图上传显示
2019/12/18 Javascript
python类型强制转换long to int的代码
2013/02/10 Python
Python实现根据指定端口探测服务器/模块部署的方法
2014/08/25 Python
Python fileinput模块使用介绍
2014/11/30 Python
mysql 之通过配置文件链接数据库
2017/08/12 Python
Django在pycharm下修改默认启动端口的方法
2019/07/26 Python
Python如何使用函数做字典的值
2019/11/30 Python
Python多进程编程常用方法解析
2020/03/26 Python
详解java调用python的几种用法(看这篇就够了)
2020/12/10 Python
CSS3媒体查询Media Queries基础学习教程
2016/02/29 HTML / CSS
如何用H5实现一个触屏版的轮播器的实例
2017/01/09 HTML / CSS
蒙蒂塞罗商店:Monticello Shop
2018/11/25 全球购物
《盘古开天地》教学反思
2014/02/28 职场文书
2014年国庆节广播稿
2014/09/19 职场文书
房屋出售授权委托书
2014/10/12 职场文书
教师政风行风自查自纠报告
2014/10/21 职场文书
员工保密协议范本,您一定得收藏!很有用!
2019/08/08 职场文书
遇事可以测出您的见识与格局
2019/09/16 职场文书
JavaScript 语句之常用 for 循环详解
2021/03/29 Javascript
gtx1650怎么样 gtx1650显卡相当于什么级别
2022/04/08 数码科技
MySQL查询日期时间
2022/05/15 MySQL
如何用H5实现好玩的2048小游戏
2022/07/23 HTML / CSS