需要实现的效果图:
1、过滤不需要显示的省份
this.filterArea('台湾省')
this.filterArea('香港特别行政区')
this.filterArea('澳门特别行政区')
// 过滤不需要显示的省份
filterArea(val) {
this.cities.splice(this.cities.findIndex(item => item.label === val), 1)
},
2、需要对省份进行截取,不需要显示全称。只显示简称,可以使用以下方法。
<el-checkbox-group v-model="tradeRangeIds">
<el-checkbox v-for="item in cities" :label="item.value" :key="item.value">
{{ showProvince(item.label) }}
</el-checkbox>
</el-checkbox-group>
showProvince(name) {
// 显示省份简称
// 省 市 自治区 特别行政区 维吾尔 壮族 回族
try {
name = name.replace('省', '').replace('市', '').replace('自治区', '').replace('特别行政区', '').replace('维吾尔', '')
name = name.replace('壮族', '').replace('回族', '')
} catch (error) {
console.error('showProvince:', name)
}
return name
},
所有省份数据。
this.cities = [
{
"label": "北京市",
"value": "32"
},
{
"label": "天津市",
"value": "33"
},
{
"label": "河北省",
"value": "24"
},
{
"label": "山西省",
"value": "26"
},
{
"label": "内蒙古自治区",
"value": "3"
},
{
"label": "辽宁省",
"value": "7"
},
{
"label": "吉林省",
"value": "34"
},
{
"label": "黑龙江省",
"value": "4"
},
{
"label": "上海市",
"value": "10"
},
{
"label": "江苏省",
"value": "18"
},
{
"label": "浙江省",
"value": "23"
},
{
"label": "安徽省",
"value": "14"
},
{
"label": "福建省",
"value": "15"
},
{
"label": "江西省",
"value": "22"
},
{
"label": "山东省",
"value": "8"
},
{
"label": "河南省",
"value": "2"
},
{
"label": "湖北省",
"value": "6"
},
{
"label": "湖南省",
"value": "16"
},
{
"label": "广东省",
"value": "1"
},
{
"label": "广西壮族自治区",
"value": "20"
},
{
"label": "海南省",
"value": "17"
},
{
"label": "重庆市",
"value": "12"
},
{
"label": "四川省",
"value": "30"
},
{
"label": "贵州省",
"value": "11"
},
{
"label": "云南省",
"value": "31"
},
{
"label": "西藏自治区",
"value": "13"
},
{
"label": "陕西省",
"value": "9"
},
{
"label": "甘肃省",
"value": "29"
},
{
"label": "青海省",
"value": "19"
},
{
"label": "宁夏回族自治区",
"value": "21"
},
{
"label": "新疆维吾尔自治区",
"value": "5"
},
{
"label": "台湾省",
"value": "27"
},
{
"label": "香港特别行政区",
"value": "25"
},
{
"label": "澳门特别行政区",
"value": "28"
}
]