关于地址的级联选择器

news2024/9/25 10:32:56

相信大家在项目中经常要做关于地址的级联选择器:效果如下图
在这里插入图片描述
在常见的组件库,例如element-ui/element-plus等中就有关于级联选择器的使用,但该组件并没有封装好的关于中国省市区甚至更详细的关于地址的级联选择器,因此我尝试在网络中进行搜索

1.element-address

这个是类似一个二次封装的第三方包,它内部的组件是基于element-ui实现的,由于我自身项目是vue3用的是element-plus所以就没有用,如果你是安装了element-ui的vue2项目,可以用来试一试

https://gitee.com/asseek/element-address#%E6%8F%90%E4%BE%9B%E7%BB%84%E4%BB%B6
其中已经写了包括安装和使用的具体方法

注:该方法我在vue3的demo中试了不行一直报错可能是使用错误,希望后续有使用成功的小伙伴可以分享一下自己的成功经验

2.province-city-china

中华人民共和国行政区划代码,包含了中华人民共和国行政区划(五级):省级、地级、县级、乡级和村级,来自中华人民共和国行政部,用于查询中国省、市和区数据的网站

https://www.npmjs.com/package/province-city-china 更详细的信息查看该网站

这里我以图一的效果图为例

实现我想要的效果首先要拿到中国的省、市、区这样的层级数据
在这里插入图片描述
根据该包的讲解中看到该文件列表在level.json中
在要使用数据的页面vue组件中隐形引入

<script>
import data from 'province-city-china/dist/level.json'
//打印一下data我们可以看到拿到了我们需要的层级,
</script>

在这里插入图片描述
但如果想要在 el-cascader 级联选择器中使用该数据,我们需要对数据进行处理,因为级联选择器选项的数据源,显示默认是label,取值默认是value,但我们目前的数据并不符合,但可以自定义,这里我需要显示name,获取的值也要是name,所以我要给每个数据源加上label和value属性,且值都为name
在这里插入图片描述
由于需要处理的值是多层级的,因此封装了一个方法进行递归循环

<template>
	<div>
		<el-cascader v-model="value" :options="areaList" />
	</div>
</template>
<script>
import data from 'province-city-china/dist/level.json'
export default{
	data(){
		return {
			value:[]
		}
	},
	computed:{
		areaList(){
			return this.setLabelAndValue(data)
		}
	},
	methods:{
		setLabelAndValue(arr){
			for(let i=0;i<arr.length;i++){
				arr[i].label=arr[i].name
				arr[i].value=arr[i].name
				if(arr[i].children){
					this.setLabelAndValue(arr[i].children)
				}
			}
			return arr
		}
	}
}
</script>

上述代码即可获得图一的效果

如果大家有别的写法,欢迎留言评论区,大家一起交流学习~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1989178.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Excel中的数据筛选利器:COUNTIF函数深度解析与应用实战

文章目录 前言一、COUNTIF基础应用二、常见用法1.基本条件计数2.使用通配符进行模糊匹配3.引用单元格中的值作为条件4.多条件计数&#xff08;使用COUNTIFS&#xff09;5.重复值查找与去重6.结合其他函数使用 前言 Excel中的COUNTIF函数是一个极为强大且灵活的工具&#xff0c;…

【MongoDB 】MongoDB 介绍及应用,设计到4个案例

MongoDB 介绍概述 基础概念 MongoDB 是非关系型数据库&#xff0c;也就是nosql&#xff0c;存储json数据格式会非常灵活&#xff0c;要比数据库mysql/MariaDB更好&#xff0c;同时也能为mysql/MariaDB分摊一部分的流量压力。 对于经常读写的数据他会存入内存&#xff0c;如此…

STL中的list以及简单实现

STL的list的底层结构其实就是带头双向循环双向链表 带头双向循环双向链表又简单又好用&#xff0c;效率又高&#xff0c;所以其结构是完美的&#xff08;对于链表而言&#xff09;&#xff1a; 其中一个原因&#xff1a;有哨兵位的头节点&#xff0c;又循环&#xff0c;找尾很…

前端day7-css选择器

<!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>css</title><!-- 内嵌式CSS --><sty…

Python 为Excel单元格设置填充\背景色 (纯色、渐变、图案)

在使用Excel进行数据处理和分析时&#xff0c;对特定单元格进行背景颜色填充不仅能够提升工作表的视觉吸引力&#xff0c;还能帮助用户快速识别和区分不同类别的数据&#xff0c;增强数据的可读性和理解性。 本文将通过以下三个示例详细介绍如何使用Python在Excel中设置不同的单…

远程连接本地虚拟机失败问题汇总

前言 因为我的 Ubuntu 虚拟机是新装的&#xff0c;并且应该装的是比较纯净的版本&#xff08;纯净是指很多工具都尚未安装&#xff09;&#xff0c;然后在使用远程连接工具 XShell 连接时出现了很多问题&#xff0c;这些都是我之前没遇到过的&#xff08;因为之前主要使用云服…

javax.validation.constraints.NotEmpty 报错

1、问题 javax.validation.constraints.NotEmpty报错2、原因 validation-api版本较低问题 3、解决 升级版本 javax.validation:validation-api 由1.1.0.Final升级至 2.0.1.Final <dependency><groupId>javax.validation</groupId><artifactId>vali…

机房托管服务器说明

机房托管服务器是指将企业或个人的服务器放置到专业数据中心(IDC机房)进行管理和维护&#xff0c;由数据中心提供稳定、安全的运行环境以及网络连接等基础设施支持。rak小编为您整理发布机房托管服务器说明详细内容。 通过托管服务器到专业机房&#xff0c;企业能够享受到高性能…

【Redis 进阶】集群(重点理解流程和原理)

一、基本概念 前面学习的哨兵模式&#xff0c;提高了系统的可用性。但是真正用来存储数据的还是 master 和 slave 节点&#xff0c;所有的数据都需要存储在单个 master 和 slave 节点中。如果数据量很大&#xff0c;接近超出了 master / slave 所在机器的物理内存&#xff0c…

Maxon公司产品将于 2024 年 9 月提高订阅价格?

Maxon公司的用户们最近在Reddit和Core 4D论坛上分享了一张图片&#xff0c;图片内容显示了Maxon公司计划在2024年9月1日对其产品订阅价格进行调整&#xff0c;涉及的产品包括Cinema 4D和ZBrush等。 根据这张图片&#xff0c;Redshift渲染器的月度订阅费用将上涨2.2%&#xff0c…

社交网络的演变:从Facebook到Meta的战略转型

随着科技的飞速发展&#xff0c;社交网络平台正经历着深刻的变革。Facebook的品牌重塑为Meta不仅是名称的更改&#xff0c;更是对未来社交网络模式的全新定义。本文将深入探讨Facebook向Meta转型的背景、战略及其未来影响&#xff0c;剖析这一转型对社交网络的深远影响。 背景与…

UKP3d,AutoPDMS出报表时数值格式如何调整

用户问&#xff0c;支吊架一览表的位移数值不是整数&#xff0c;请问怎么处理呢&#xff1f; 1.在AutoPDMS是修改软件的安装目录下的配置文件&#xff0c;如图&#xff1a; 2.在UKP3d里修改报表元件&#xff0c;如图&#xff1a;

嵌入式day21

fileno 获得一个文件流指针中的文件描述符 FILE *fp -> int fd stream 文件流指针 返回值&#xff1a; 成功 返回文件描述符 失败 返回-1 关文件一般关封装度高的 fdopen 将文件描述符转化为文件流指针 int fd -> FILE *fp fd : 已经打开的文件描述符 mode &quo…

Unity检测鼠标进入、离开UI

Unity检测鼠标进入、离开UI检测 引用命名空间 UnityEngine.EventSystems IPointerEnterHandler&#xff1a;进入 IPointerExitHandler&#xff1a;离开 注意&#xff1a;Image需开启RaycastTarget using UnityEngine; using UnityEngine.EventSystems; public class IPointe…

8.7-主从数据库的配置+mysql的增删改查

一、mysql环境的配置 1.环境准备 &#xff08;1&#xff09;主数据库 #关闭防火墙 [rootmaster ~]# systemctl stop firewalld#关闭selinux [rootmaster ~]# setenforce 0#下载lrzsz工具 [rootmaster ~]# yum -y install lrzsz#安装rsync [rootmaster ~]# yum -y install rs…

如何高效利用阿里云Docker镜像仓库管理您的容器镜像

文章目录 前言一、Docker镜像仓库1.公共仓库2.私有仓库 二、开通阿里云Docker镜像仓库ACR1.创建阿里云账号并开通容器镜像服务2.创建命名空间与镜像仓库 三、如何使用镜像仓库ACR1.登录阿里云Docker Registry2.推送镜像到阿里云私有镜像仓库3.从阿里云私有镜像仓库拉取镜像 总结…

CAN直接网络管理(20240805)

长安CAN网络管理规范 个人理解&#xff1a;管理CAN网络中各NM节点的工作模式&#xff08;状态&#xff09;&#xff1b; 1.术语定义 &#x1f449;节点地址&#xff1a;用于唯一标识网络中每个节点的单字节数字&#xff0c;取值范围是 0x00~0xFF。&#x1f449;状态迁移&#x…

Vue3从零开始——掌握setup、ref和reactive函数的奥秘

文章目录 一、Vue 3 组合式 API 概述二、setup​ 函数的基本使用2.1 setup​ 函数的特点2.2 setup​ 函数的基本结构2.3 实现一个简单的小demo 三、ref​ 函数的功能和应用3.1 ref​函数介绍3.2 基本使用3.2.1 定义ref​数据3.2.2 修改响应式变量 3.3 使用ref​函数实现计数器 …

CTFHUB-web-RCE-过滤空格

开启题目 在 URL 后面拼接使用管道符执行注入&#xff0c;发现了 flag 的可疑文件 127.0.0.1|ls 因为这题过滤了空格&#xff0c;如果在 URL 中输入空格&#xff0c;则不会执行 ping 命令。那么这里将空格替换为 %09 &#xff0c;也就是 ASCII 的 Tab 键。右键检查网页源代码发…

【OpenCV-Python实战项目】01-OCR文本检测

OpenCVTesseract文本检测 0.介绍1.基础功能实现1.1 字符检测1.2 单词检测1.3 只检测数字 2.工程应用2.1 封装类2.2 屏幕截图识别2.3 视频文本检测&#xff08;待优化&#xff09; 3.参考 0.介绍 &#xff08;1&#xff09;Tesseract是一个开源文本识别 (OCR)引擎&#xff0c;是…