解决vue使用vant下拉框van-dropdown-item 绑定title值不变问题


Posted in Javascript onAugust 05, 2020

1、创建vue项目

2、使用vant组件

npm install vant --S

全局引用时在main.js引入

import Vant from 'vant';
import 'vant/lib/index.css';
Vue.use(Vant);

假如你引入之后发现页面的样式和组件都挂载了,但是console控制台会报错,说xxxx组件没有register,这个时候很有可能是你的vant插件版本有问题,重新下载一个最新的vant就可以了,现在是2.6.0版本

好,接下来继续

在需要使用下拉框的地方使用下拉框组件

<van-dropdown-menu>
  <van-dropdown-item
   v-model="value"
  :options="developList"
  />
</van-dropdown-menu>
 
data () {
  return {
  value: ''
  developList: [
   {
   value: '1',
   text: '我是第一个'
   },
  {
   value: '2',
   text: '我是第二个'
   },
  ]
 }
}

假如是这样的话那么下拉框就会默认显示第一个字眼“wishing第一个”,然后你在点击下拉框选择第二个时也会改变成“我是第二个”

如果你不想有默认选中,并且一开始就显示请选择这样的提示字眼,那么我们可以去看看vant的api文档,发现有一个title的字眼,这个title就是下拉框的显示文字,一开始很多人以为这个下拉框的title只是用来显示然后点击下拉框的item之后会自动绑定过的,但其实是错误的,以下就是一个很好的例子

<van-dropdown-menu>
 <van-dropdown-item
 title="请选择"
 v-model="value"
 :disabled="disabled"
 :options="developList"
 />
</van-dropdown-menu>
 
data () {
  return {
  value: ''
  developList: [
   {
   value: '1',
   text: '我是第一个'
   },
  {
   value: '2',
   text: '我是第二个'
   },
  ]
 }
}

你会发现请选择的自然从来没变过,无论你选择了第一个还是第二个,那么你就会想title是不是绑定,接下来就有以下操作

<van-dropdown-menu>
 <van-dropdown-item
 :title="title"
 v-model="value"
 :disabled="disabled"
 :options="developList"
 />
</van-dropdown-menu>
 
data () {
  return {
  value: ''
  title:''请选择,
  developList: [
   {
   value: '1',
   text: '我是第一个'
   },
  {
   value: '2',
   text: '我是第二个'
   },
  ]
 }
}

加下来发现还是没有改动啊,那是不是绑定的值没有发生改变了,好像是的,因为你值定义了这个title,这个title就是下拉框选择的显示,只是你没有title的时候vant把你选择的text文字映射到title上去了,一旦你自己使用title进行绑定,那么每次修改时就要修改title,查看vant api可以发现有change事件,接下来就可以操作了

<van-dropdown-menu>
 <van-dropdown-item
 :title="title"
 v-model="value"
 :options="developList"
 @change="changeDevelop"
 />
</van-dropdown-menu>
 
data () {
  return {
  value: ''
  title:''请选择,
  developList: [
   {
   value: '1',
   text: '我是第一个'
   },
  {
   value: '2',
   text: '我是第二个'
   },
  ]
 }
},
 
methods: {
 changeDevelop (i) {
  this.title = this.developList[i-1].text
 },
}

这就没问题啦!

以上这篇解决vue使用vant下拉框van-dropdown-item 绑定title值不变问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
基于Jquery的动态添加控件并取值的实现代码
Sep 24 Javascript
解决jquery异步按一定的时间间隔刷新问题
Dec 10 Javascript
使用javascript过滤html的字符串(注释标记法)
Jul 08 Javascript
Javascript中call的两种用法实例
Dec 13 Javascript
JS绘制生成花瓣效果的方法
Aug 05 Javascript
基于ajax和jsonp的原生封装(实例)
Oct 16 Javascript
JS通过ajax + 多列布局 + 自动加载实现瀑布流效果
May 30 Javascript
如何给element添加一个抽屉组件的方法步骤
Jul 14 Javascript
微信小程序静默登录的实现代码
Jan 08 Javascript
Angular利用HTTP POST下载流文件的步骤记录
Jul 26 Javascript
Vue环境搭建+VSCode+Win10的详细教程
Aug 19 Javascript
关于Vue Router的10条高级技巧总结
May 06 Vue.js
vant 自定义 van-dropdown-item的用法
Aug 05 #Javascript
浅谈vue 多个变量同时赋相同值互相影响
Aug 05 #Javascript
Vue的v-model的几种修饰符.lazy,.number和.trim的用法说明
Aug 05 #Javascript
vue实现在进行增删改操作后刷新页面
Aug 05 #Javascript
vue 限制input只能输入正数的操作
Aug 05 #Javascript
vue:el-input输入时限制输入的类型操作
Aug 05 #Javascript
vue data变量相互赋值后被实时同步的解决步骤
Aug 05 #Javascript
You might like
php中处理mysql_fetch_assoc返回来的数组 不用foreach----echo
2011/05/04 PHP
PHP 字符串正则替换函数preg_replace使用说明
2011/07/15 PHP
初识PHP
2014/09/28 PHP
wamp服务器访问php非常缓慢的解决过程
2015/07/01 PHP
PHP中多线程的两个实现方法
2016/10/14 PHP
PHP异常处理定义与使用方法分析
2017/07/25 PHP
在Laravel中使用DataTables插件的方法
2018/05/29 PHP
prototype Element学习笔记(篇二)
2008/10/26 Javascript
javascript 面向对象全新理练之数据的封装
2009/12/03 Javascript
jQuery asp.net 用json格式返回自定义对象
2010/04/07 Javascript
分享精心挑选的12款优秀jQuery Ajax分页插件和教程
2012/08/09 Javascript
js动态移动滚动条至底部示例代码
2014/04/24 Javascript
关于javascript原型的修改与重写(覆盖)差别详解
2016/08/31 Javascript
使用JavaScript实现链表的数据结构的代码
2017/08/02 Javascript
微信小程序的线程架构【推荐】
2019/05/14 Javascript
vue-cli3跨域配置的简单方法
2019/09/06 Javascript
vue.js实现图书管理功能
2019/09/24 Javascript
JavaScript实现移动端带transition动画的轮播效果
2020/03/24 Javascript
JavaScript实时更新当前的时间的示例代码
2020/07/15 Javascript
python client使用http post 到server端的代码
2013/02/10 Python
Python常用列表数据结构小结
2014/08/06 Python
python执行等待程序直到第二天零点的方法
2015/04/23 Python
详解Python的Django框架中inclusion_tag的使用
2015/07/21 Python
python通过文件头判断文件类型
2015/10/30 Python
Python压缩解压缩zip文件及破解zip文件密码的方法
2015/11/04 Python
Python使用random.shuffle()打乱列表顺序的方法
2018/11/08 Python
Python Pexpect库的简单使用方法
2019/01/29 Python
Python操作SQLite数据库过程解析
2019/09/02 Python
查看keras各种网络结构各层的名字方式
2020/06/11 Python
python实现感知机模型的示例
2020/09/30 Python
Vilebrequin美国官方网上商店:法国豪华泳装品牌
2020/02/22 全球购物
结婚喜宴家长答谢词
2014/01/15 职场文书
生物科学专业职业规划书范文
2014/02/11 职场文书
青年志愿者先进事迹
2014/05/06 职场文书
工商局副局长个人对照检查材料
2014/09/25 职场文书
手把手教你怎么用Python实现zip文件密码的破解
2021/05/27 Python