vant怎么实现自定义二级菜单省份和城市分开效果
Admin 2022-06-02 群英技术资讯 1553 次浏览
今天就跟大家聊聊有关“vant怎么实现自定义二级菜单省份和城市分开效果”的内容,可能很多人都不太了解,为了让大家认识和更进一步的了解,小编给大家总结了以下内容,希望这篇“vant怎么实现自定义二级菜单省份和城市分开效果”文章能对大家有帮助。(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二级联动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)
},
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
这篇文章主要为大家详细介绍了原生JS实现呼吸轮播图,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
本篇文章给大家带来了关于JavaScript的相关知识,其中主要整理了数组知识点的相关问题,包括了数组的概念、数组中的常用属性和方法等等内容,下面一起来看一下,希望对大家有帮助。
这篇文章给大家分享的是用JS实现重置功能的方法。对于重置的功能大家应该都不陌生,当网页填写的信息需要大量修改时,重置功能快速的重置页面,非常的方便。文中的示例代码介绍得很详细,有需要的朋友可以参考,接下来就跟随小编一起了解看看吧。
笔者最近用react useEffect闭包,其中踩到了一些坑在此与大家分享一下。需要的朋友们下面随着小编来一起学习学习吧
这篇文章主要为大家介绍了React 实现具备吸顶和吸底功能组件实例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008