vue中國(guó)城市選擇器的使用教程(element-china-area-data)
一、Element UI 中國(guó)省市區(qū)級(jí)聯(lián)數(shù)據(jù)
本文參考:element-china-area-data - npm
1. 安裝
npm install element-china-area-data -S
2. 使用
import { provinceAndCityData, regionData, provinceAndCityDataPlus, regionDataPlus, CodeToText, TextToCode } from 'element-china-area-data'
- provinceAndCityData是省市二級(jí)聯(lián)動(dòng)數(shù)據(jù)(不帶“全部”選項(xiàng))
- regionData是省市區(qū)三級(jí)聯(lián)動(dòng)數(shù)據(jù)(不帶“全部”選項(xiàng))
- provinceAndCityDataPlus是省市區(qū)三級(jí)聯(lián)動(dòng)數(shù)據(jù)(帶“全部”選項(xiàng))
- regionDataPlus是省市區(qū)三級(jí)聯(lián)動(dòng)數(shù)據(jù)(帶“全部”選項(xiàng))
- “全部"選項(xiàng)綁定的value是空字符串”"
- CodeToText是個(gè)大對(duì)象,屬性是區(qū)域碼,屬性值是漢字 用法例如:CodeToText[‘110000’]輸出北京市
- extToCode是個(gè)大對(duì)象,屬性是漢字,屬性值是區(qū)域碼
用法例如:TextToCode[‘北京市’].code輸出110000,TextToCode[‘北京市’][‘市轄區(qū)’].code輸出110100,TextToCode[‘北京市’][‘市轄區(qū)’][‘朝陽(yáng)區(qū)’].code輸出110105
3.案例
3.1 省市二級(jí)聯(lián)動(dòng)(不帶“全部”選項(xiàng)):
<template> <div id="app"> <el-cascader size="large" :options="options" v-model="selectedOptions" @change="handleChange"> </el-cascader> </div> </template> <script> import { provinceAndCityData } from 'element-china-area-data' export default { data () { return { options: provinceAndCityData, selectedOptions: [] } }, methods: { handleChange (value) { console.log(value) } } } </script>
3.2 省市二級(jí)聯(lián)動(dòng)(帶“全部”選項(xiàng)):
<template> <div id="app"> <el-cascader size="large" :options="options" v-model="selectedOptions" @change="handleChange"> </el-cascader> </div> </template> <script> import { provinceAndCityDataPlus } from 'element-china-area-data' export default { data () { return { options: provinceAndCityDataPlus, selectedOptions: [] } }, methods: { handleChange (value) { console.log(value) } } } </script>
3.3 省市三級(jí)聯(lián)動(dòng)(不帶“全部”選項(xiàng)):
<template> <div id="app"> <el-cascader size="large" :options="options" v-model="selectedOptions" @change="handleChange"> </el-cascader> </div> </template> <script> import { regionData } from 'element-china-area-data' export default { data () { return { options: regionData, selectedOptions: [] } }, methods: { handleChange (value) { console.log(value) } } } </script>
3.4 省市三級(jí)聯(lián)動(dòng)(帶“全部”選項(xiàng)):
<template> <div id="app"> <el-cascader size="large" :options="options" v-model="selectedOptions" @change="handleChange"> </el-cascader> </div> </template> <script> import { regionDataPlus } from 'element-china-area-data' export default { data () { return { options: regionDataPlus, selectedOptions: [] } }, methods: { handleChange (value) { console.log(value) } } } </script>
二、CodeToText的使用
把區(qū)域碼轉(zhuǎn)成漢字
getCodeToText(codeArray) { let area = ""; switch (codeArray.length) { case 1: area += CodeToText[codeArray[0]]; break; case 2: area += CodeToText[codeArray[0]] + "/" + CodeToText[codeArray[1]]; break; case 3: area += CodeToText[codeArray[0]] + "/" + CodeToText[codeArray[1]] + "/" + CodeToText[codeArray[2]]; break; default: break; } console.log(area); }
三、完整案例
<template> <div id="app"> <el-cascader size="large" :options="options" v-model="selectedOptions" @change="handleChange"> </el-cascader> </div> </template> <script> import { regionData ,CodeToText} from 'element-china-area-data' export default { data () { return { options: regionData, selectedOptions: [] } }, methods: { handleChange (value) { this.getCodeToText(value) }, getCodeToText(codeArray) { let area = ""; switch (codeArray.length) { case 1: area += CodeToText[codeArray[0]]; break; case 2: area += CodeToText[codeArray[0]] + "/" + CodeToText[codeArray[1]]; break; case 3: area += CodeToText[codeArray[0]] + "/" + CodeToText[codeArray[1]] + "/" + CodeToText[codeArray[2]]; break; default: break; } console.log(area); } } } </script>
總結(jié)
到此這篇關(guān)于vue中國(guó)城市選擇器使用的文章就介紹到這了,更多相關(guān)vue中國(guó)城市選擇器內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Vue實(shí)現(xiàn)點(diǎn)擊導(dǎo)航欄當(dāng)前標(biāo)簽后變色功能
這篇文章主要為大家詳細(xì)介紹了Vue實(shí)現(xiàn)點(diǎn)擊導(dǎo)航欄當(dāng)前標(biāo)簽后變色功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-08-08vue如何根據(jù)權(quán)限生成動(dòng)態(tài)路由、導(dǎo)航欄
這篇文章主要介紹了vue如何根據(jù)權(quán)限生成動(dòng)態(tài)路由、導(dǎo)航欄,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-03-03100行代碼實(shí)現(xiàn)一個(gè)vue分頁(yè)組功能
今天用vue來(lái)實(shí)現(xiàn)一個(gè)分頁(yè)組件,總體來(lái)說(shuō),vue實(shí)現(xiàn)比較簡(jiǎn)單,樣式部分模仿了elementUI。接下來(lái)本文通過(guò)實(shí)例代碼給大家介紹100行代碼實(shí)現(xiàn)一個(gè)vue分頁(yè)組功能,感興趣的朋友跟隨小編一起看看吧2018-11-11Vue新搭檔TypeScript快速入門(mén)實(shí)踐記錄
TypeScript 是一種由微軟開(kāi)發(fā)的自由和開(kāi)源的編程語(yǔ)言,它是 JavaScript 的一個(gè)超集,擴(kuò)展了 JavaScript 的語(yǔ)法。這篇文章主要介紹了Vue新搭檔TypeScript快速入門(mén)實(shí)踐,需要的朋友可以參考下2021-06-06vue3中安裝并使用CSS預(yù)處理器Sass的方法詳解
Sass是一種CSS預(yù)處理器,它擴(kuò)展了CSS的功能,提供了更高級(jí)的語(yǔ)法和特性,例如變量、嵌套、混合、繼承和顏色功能等,這些特性可以幫助開(kāi)發(fā)者更高效地管理和維護(hù)樣式表,本文介紹vue3中安裝并使用CSS預(yù)處理器Sass的方法,感興趣的朋友一起看看吧2024-01-01Vue+webpack實(shí)現(xiàn)懶加載過(guò)程解析
這篇文章主要介紹了Vue+webpack實(shí)現(xiàn)懶加載過(guò)程解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-02-02vue項(xiàng)目中data數(shù)據(jù)之間互相訪問(wèn)的實(shí)現(xiàn)
本文主要介紹了vue項(xiàng)目中data數(shù)據(jù)之間互相訪問(wèn)的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2022-05-05Vue3中關(guān)于ref和reactive的區(qū)別分析
這篇文章主要介紹了vue3關(guān)于ref和reactive的區(qū)別分析,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)吧2023-06-06Vue+Echarts實(shí)現(xiàn)繪制多設(shè)備狀態(tài)甘特圖
這篇文章主要為大家詳細(xì)介紹了Vue如何結(jié)合Echarts實(shí)現(xiàn)繪制多設(shè)備狀態(tài)甘特圖,文中的示例代碼講解詳細(xì),有需要的小伙伴可以跟隨小編一起學(xué)習(xí)一下2024-03-03Vue監(jiān)聽(tīng)鍵盤(pán)事件實(shí)用示例
我們?cè)陂_(kāi)發(fā)過(guò)程中經(jīng)常需要監(jiān)聽(tīng)用戶(hù)的輸入,比如用戶(hù)的點(diǎn)擊事件、拖拽事件、鍵盤(pán)事件等等,這篇文章主要給大家介紹了關(guān)于Vue監(jiān)聽(tīng)鍵盤(pán)事件實(shí)用示例的相關(guān)資料,需要的朋友可以參考下2023-11-11