vant自定义二级菜单操作


Posted in Javascript onNovember 02, 2020

(1)组件解释:

本组件是为了解决二级联动的效果编写的,这里使用了省份和城市分开的效果,具体展示效果,可以参考下面。

(2)组件代码:

<template>
 <div>
 <button @click="showM">{{ value || "选择省份" }}</button>
 <button @click="showC">{{ value2 || "选择城市" }}</button>
 <!-- 省份 -->
 <van-popup v-model="showPicker" position="bottom">
  <van-picker
  show-toolbar
  :columns="columns"
  @confirm="onConfirm"
  @cancel="showPicker = false"
  />
 </van-popup>
 <!-- 城市 -->
 <van-popup v-model="showPicker2" position="bottom">
  <van-picker
  show-toolbar
  :columns="columns2"
  @confirm="onConfirm2"
  @cancel="showPicker2 = false"
  />
 </van-popup>
 </div>
</template>

<script>
export default {
 mounted() {},
 data() {
 return {
  value: "",
  value2: "",
  columns: ["杭州", "北京", "海南省"],
  city: [
  {
   name: "杭州",
   value: ["广州", "佛山"]
  },
  {
   name: "北京",
   value: ["海淀", "廊坊"]
  },
  {
   name: "海南省",
   value: ["三亚", "海口"]
  }
  ],
  showPicker: false,
  showPicker2: false,
  columns2: []
 };
 },
 methods: {
 onConfirm(value) {
  this.value = value;
  this.value2 = "";
  this.showPicker = false;
 },
 onConfirm2(value) {
  this.value2 = value;
  this.showPicker2 = false;
 },
 showM() {
  this.showPicker = true;
 },
 showC() {
  if (this.value) {
  let self = this;
  self.showPicker2 = true;
  self.city.forEach(v => {
   if (v.name == self.value) {
   self.value2 = self.name;
   self.columns2 = v.value;
   }
  });
  } else {
  }
 }
 },
 components: {}
};
</script>
<style lang="scss" scoped>

</style>

(3)展示效果:

vant自定义二级菜单操作

还可以结合筛选功能使用:

vant自定义二级菜单操作

补充知识:vant二级联动picker选择器

我就废话不多说了,大家还是直接看代码吧~

<van-picker :columns="columns" @change="onChange" />

const citys = {
   '浙江': ['杭州', '宁波', '温州', '嘉兴', '湖州'],
   '福建': ['福州', '厦门', '莆田', '三明', '泉州']
 };
data:{
columns: [
  {
 values: Object.keys(citys),
 className: 'column1'
  },
  {
 values: citys['浙江'],
 className: 'column2',
 defaultIndex: 2
  }
],
}
onChange(picker, values) {
  picker.setColumnValues(1, citys[values[0]]);
   console.log(values)
 },

以上这篇vant自定义二级菜单操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
extjs 学习笔记 四 带分页的grid
Oct 20 Javascript
jquery each()源代码
Feb 14 Javascript
js onkeypress与onkeydown 事件区别详细说明
Dec 13 Javascript
Javascript基础教程之数组 array
Jan 18 Javascript
JS实现求数组起始项到终止项之和的方法【基于数组扩展函数】
Jun 13 Javascript
jquery+css实现下拉列表功能
Sep 03 jQuery
Vue2 轮播图slide组件实例代码
May 31 Javascript
浅谈vue首屏加载优化
Jun 28 Javascript
vue中如何实现pdf文件预览的方法
Jul 12 Javascript
jQuery+Ajax+js实现请求json格式数据并渲染到html页面操作示例
Jun 02 jQuery
浅谈js数组splice删除某个元素爬坑
Oct 14 Javascript
如何用Node.js编写内存效率高的应用程序
Apr 30 Javascript
JavaScript动态生成表格的示例
Nov 02 #Javascript
JavaScript实现图片放大预览效果
Nov 02 #Javascript
解决antd 表单设置默认值initialValue后验证失效的问题
Nov 02 #Javascript
在antd4.0中Form使用initialValue操作
Nov 02 #Javascript
vue+iview使用树形控件的具体使用
Nov 02 #Javascript
在antd Form表单中select设置初始值操作
Nov 02 #Javascript
react+antd 递归实现树状目录操作
Nov 02 #Javascript
You might like
php实现单链表的实例代码
2013/03/22 PHP
CI(CodeIgniter)框架中的增删改查操作
2014/06/10 PHP
解决yii2左侧菜单子级无法高亮问题的方法
2016/05/08 PHP
php中strlen和mb_strlen用法实例分析
2016/11/12 PHP
PHP ob缓存以及ob函数原理实例解析
2020/11/13 PHP
细说浏览器特性检测(2)-通用事件检测
2010/11/05 Javascript
基于jQuery实现的Ajax 验证用户名是否存在的实现代码
2011/04/06 Javascript
location对象的属性和方法应用(解析URL)
2013/04/12 Javascript
你必须知道的Javascript知识点之&quot;this指针&quot;的应用
2013/04/23 Javascript
jquery中animate动画积累的解决方法
2013/10/05 Javascript
判断文件是否正在被使用的JS代码
2013/12/21 Javascript
详解javascript中的事件处理
2015/11/06 Javascript
JavaScript中捕获/阻止捕获、冒泡/阻止冒泡方法
2016/12/07 Javascript
jQuery实现立体式数字滚动条增加效果
2016/12/21 Javascript
Bootstrap和Java分页实例第一篇
2016/12/23 Javascript
如何制作幻灯片(代码分享)
2017/01/06 Javascript
浅谈js中的变量名和函数名重名
2017/02/13 Javascript
基于es6三点运算符的使用方法(实例讲解)
2017/10/12 Javascript
vue2.0页面前进刷新回退不刷新的实现方法
2018/07/31 Javascript
让webpack+vue-cil项目不再自动打开浏览器的方法
2018/09/27 Javascript
深入学习JavaScript 高阶函数
2019/06/11 Javascript
解决Vue项目打包后打开index.html页面显示空白以及图片路径错误的问题
2019/10/25 Javascript
原生javascript的ajax请求及后台PHP响应操作示例
2020/02/24 Javascript
Python入门之三角函数atan2()函数详解
2017/11/08 Python
Python Unittest根据不同测试环境跳过用例的方法
2018/12/16 Python
使用Django和Postgres进行全文搜索的实例代码
2020/02/13 Python
jupyter 导入csv文件方式
2020/04/21 Python
土耳其时尚潮流在线购物网站:Trendyol
2017/10/10 全球购物
三陽商会官方网站:Sanyo iStore
2019/05/15 全球购物
美国饼干礼物和美食甜点购买网站:Cheryl’s
2020/05/28 全球购物
JMS中Topic和Queue有什么区别
2013/05/15 面试题
管道维修工岗位职责
2013/12/27 职场文书
个人党性剖析材料
2014/02/03 职场文书
贷款委托书怎么写
2014/08/02 职场文书
小学教师年度个人总结
2015/02/05 职场文书
Nginx搭建rtmp直播服务器实现代码
2021/03/31 Servers