vue城市选择器的使⽤element-china-area-data
⼀、Element UI 中国省市区级联数据
1. 安装
npm install element-china-area-data -S
2. 使⽤
import { provinceAndCityData, regionData, provinceAndCityDataPlus, regionDataPlus, CodeToText, TextToCode } from 'element-china-area-data'
1. provinceAndCityData是省市⼆级联动数据(不带“全部”选项)
2. regionData是省市区三级联动数据(不带“全部”选项)
3. provinceAndCityDataPlus是省市区三级联动数据(带“全部”选项)
4. regionDataPlus是省市区三级联动数据(带“全部”选项)
5. “全部"选项绑定的value是空字符串”"
6. CodeToText是个⼤对象,属性是区域码,属性值是汉字 ⽤法例如:CodeToText[‘110000’]输出北京市
7. extToCode是个⼤对象,属性是汉字,属性值是区域码
⽤法例如:TextToCode[‘北京市’].code输出110000,TextToCode[‘北京市’][‘市辖区’].code输出
110100,TextToCode[‘北京市’][‘市辖区’][‘朝阳区’].code输出110105
3. 案例
3.1 省市⼆级联动(不带“全部”选项):
<template>
<div id="app">
<el-cascadervue element admin
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 省市⼆级联动(带“全部”选项):
:
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 省市三级联动(不带“全部”选项):
<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 省市三级联动(带“全部”选项):
: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>
4.绑定value格式
value是区域码"110000"
⼆、CodeToText的使⽤
数据⽰例:codeStr=‘110000,110100,110101’, codeArray=[110000,110100,110101]
getCodeToText(codeStr, codeArray) {
if (null === codeStr && null === codeArray) {
return null;
} else if (null === codeArray) {
codeArray = codeStr.split(",");
}
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;
}
return area;
}

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。