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 相关文章推荐
基于jquery创建的一个图片、视频缓冲的效果样式插件
Aug 28 Javascript
Ext修改GridPanel数据和字体颜色、css属性等
Jun 13 Javascript
javascript中Number对象的toString()方法分析
Dec 20 Javascript
thinkphp 表名 大小写 窍门
Feb 01 Javascript
用Node.js通过sitemap.xml批量抓取美女图片
May 28 Javascript
javascript特效实现——当前时间和倒计时效果的简单实例
Jul 20 Javascript
详解vue的数据binding绑定原理
Apr 12 Javascript
Vue中定义全局变量与常量的各种方式详解
Aug 23 Javascript
微信小程序select下拉框实现效果
May 15 Javascript
JavaScript 扩展运算符用法实例小结【基于ES6】
Jun 17 Javascript
使用JQuery自动完成插件Auto Complete详解
Jun 18 jQuery
JavaScript鼠标拖拽事件详解
Apr 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
PHP关联链接常用代码
2012/11/05 PHP
yii2简单使用less代替css示例
2017/03/10 PHP
PHP 实现页面静态化的几种方法
2017/07/23 PHP
php实现登录页面的简单实例
2019/09/29 PHP
ThinkPHP6.0如何利用自定义验证规则规范的实现登陆
2020/12/16 PHP
JS将表单导出成EXCEL的实例代码
2013/11/11 Javascript
表格奇偶行设置不同颜色的核心JS代码
2013/12/24 Javascript
jquery 页面滚动到底部自动加载插件集合
2014/01/31 Javascript
Nodejs极简入门教程(一):模块机制
2014/10/25 NodeJs
JavaScript插件化开发教程 (一)
2015/01/27 Javascript
实例解析jQuery插件EasyUI最常用的表单验证规则
2015/11/29 Javascript
JavaScript 身份证号有效验证详解及实例代码
2016/10/20 Javascript
微信小程序获取用户openId的实现方法
2017/05/23 Javascript
AngularJS 最常用的八种功能(基础知识)
2017/06/26 Javascript
Angular.js通过自定义指令directive实现滑块滑动效果
2017/10/13 Javascript
vue实现样式之间的切换及vue动态样式的实现方法
2017/12/19 Javascript
jQuery实现标签子元素的添加和赋值方法
2018/02/24 jQuery
在vue项目中引入vue-beauty操作方法
2019/02/11 Javascript
node实现爬虫的几种简易方式
2019/08/22 Javascript
写一个Vue loading 插件
2020/11/09 Javascript
[08:17]Ti9 现场cosplay
2019/09/10 DOTA
[01:14:19]NAVI vs Mineski 2019国际邀请赛淘汰赛 败者组BO1 8.20.mp4
2020/07/19 DOTA
Python中的异常处理学习笔记
2015/01/28 Python
Python with用法实例
2015/04/14 Python
Python2包含中文报错的解决方法
2018/07/09 Python
python3实现用turtle模块画一棵随机樱花树
2019/11/21 Python
python使用QQ邮箱实现自动发送邮件
2020/06/22 Python
python 实现Requests发送带cookies的请求
2021/02/08 Python
Merrell迈乐澳大利亚网站:购买户外登山鞋
2017/05/28 全球购物
IGK Hair官网:喷雾、洗发水、护发素等
2020/11/03 全球购物
艺术设计专业个人求职信
2013/09/21 职场文书
《称象》教学反思
2014/04/25 职场文书
党的群众路线教育实践活动先进个人材料
2014/12/24 职场文书
综合测评自我评价
2015/03/06 职场文书
2015年统计员个人工作总结
2015/07/23 职场文书
详细聊聊关于Mysql联合查询的那些事儿
2021/10/24 MySQL