vue+ElementPlus实现中国省市区三级级联动封装

安装插件获取中国省份的所有数据

javascript 复制代码
 npm install element-china-area-data -S

借助ElementPlus 级联选择器 Cascader实现

javascript 复制代码
<template>
    <div>
     <el-cascader
          size="large"
          :options="options"
          v-model="selectedOptions"
          @change="handleChange">
        </el-cascader>
        {{  selectedOptions  }}

    </div>
</template>

<script setup lang="ts">
import { ref } from 'vue'
import { regionData ,codeToText } from 'element-china-area-data'
const options = ref(regionData)  //数据
const selectedOptions = ref([]) //选中的数据
//当选中值变化时触发的事件
const handleChange=(value:any) =>{
    console.log(value) //区域码
     if (
        selectedOptions.value[0] != null &&
        selectedOptions.value[1] != null &&
        selectedOptions.value[2] != null
    ) {
        const str =
            codeToText[selectedOptions.value[0]] +
            '/' +
            codeToText[selectedOptions.value[1]] +
            '/' +
            codeToText[selectedOptions.value[2]]
        console.log(str)  //中文
    }
}

</script>

<style lang="scss" scoped>

</style>
实现效果
相关推荐
TZOF2 分钟前
TypeScript的新类型(五):tuple元组
前端·后端·typescript
TZOF2 分钟前
TypeScript的object大小写的区别
前端·后端·typescript
用户025686170323 分钟前
前端面试-leetcode力扣hot100算法题Day1
前端
笔尖的记忆3 分钟前
浏览器的观察者
前端·javascript
高热度网3 分钟前
初始化electron项目运行后报错 electron uninstall 解决方法
前端·javascript
前端AK君4 分钟前
React license 争议
前端·react.js
我的写法有点潮4 分钟前
竟然被element-plus背刺了
前端·javascript·vue.js
南村群童欺我老无力5 分钟前
100-app-challenge 第二期 GestureGo手势识别
前端·浏览器
unknown不想说话474556 分钟前
什么是Module Federation2
前端
岁月宁静7 分钟前
AI 聊天消息长列表性能优化:后端分页 + 前端虚拟滚动
前端·vue.js·人工智能