Vue城市多选组件 - Go语言中文社区

Vue城市多选组件


效果DEMO:

在这里插入图片描述

组件需求

项目工具需求:给多个城市配置信息,城市选择具体到市,将全国这一选项设置为level=0,省level=1,市level=2。展示只展示level=2的市。
项目UI库:elementUI

组件实现

组件代码

// selectCitys.vue

<template>
  <div class="abk-select-city" @click.stop="showCitysHandler">
    <el-input
      @input="inputChangeHandler"
      v-model="searchText"
      class="abk-select-input"
      :placeholder="placeholderText">
      <i slot="suffix" v-if="!showCitys" class="el-input__icon el-icon-caret-bottom"></i>
      <i slot="suffix" v-else @click.stop="hideCitysHandler" class="el-input__icon el-icon-caret-top"></i>
    </el-input>

    <div class="dropdown-box" v-show="showCitys">
      <div class="city-tree-box" v-show="showTrees">
        <el-tree
          :data="cityInfos"
          ref="selectCityTree"
          show-checkbox
          @check-change="treeChangeHandler"
          node-key="value">
        </el-tree>
      </div>

      <div class="city-search-box" v-show="!showTrees">
        <el-checkbox-group v-model="checkCitiesList">
          <el-checkbox class="checkbox-item" v-for="city in searchResultsList"
            :label="city.regionId"
            :key="city.regionId"
            @change="value => searchItemHandler(city, value)">
              <span v-if="city.level === 2">{{getCityNameByRegionId(city.upRegionId)}}</span> <span>{{city.name}}</span>
            </el-checkbox>
        </el-checkbox-group>
        <!-- <ul>
          <li v-for="item in searchResultsList" @click="searchItemHandler(item)">{{item.name}}</li>
        </ul> -->
      </div>
    </div>
  </div>
</template>
<style lang="less" scoped>
.abk-select-city{
  position: relative;
  width:300px;
  .el-icon-caret-bottom,.el-icon-caret-top{
    margin-top:-4px;
    color: #528ED5;
  }

  .dropdown-box{
    position: absolute;
    left: 0;
    right:0;
    top:40px;
    padding: 12px 0;
    background-color: #fff;
    border: 1px solid #e4e7ed;
    border-radius: 4px;
    z-index: 10;
    .checkbox-item{
      display: block;
      padding: 0px 12px;
    }
    .el-checkbox+.el-checkbox{
      margin-left: 0;
    }
  }
  .city-tree-box{
    max-height: 350px;
    overflow-y:auto;
  }
  .city-search-box{
    max-height: 250px;
    overflow-y:auto;
    li{
      padding: 5px 12px;
    }
    li:hover{
      background: #f5f7fa;
    }
  }
}
</style>
<style lang="less">
  /* 取消框架下拉右侧箭头 */
  .abk-select-city .el-input__suffix-inner{
    display: inline-block;
  }
</style>

<script>
/**
 * <select-city ref="selectCity" placeholder="请输入省市啊"></select-city>
 *
 * 获取所有选中节点 this.$refs.selectCity.getCheckedList()
 */

import _ from 'lodash'
import {cityLists} from "@/api/json_regions";

let cityMap = {}

export default {
  props: ['placeholder', 'checkcitylist'],
  data(){
    return {
			infos:[],
      citys: [],
      showTrees: true,
      showCitys: false,
      searchText: '',
      checkCitiesList: [],
      searchResultsList: [],
      placeholderText: this.placeholder || '请添加地区',
			data1:null,
    }
  },
  model: {
    prop: 'checkcitylist',
    event: 'change'
  },
  mounted(){
    this.treeChangeHandler()
  },
	watch:{
		citys(n,o){
			this.placeholderText='请添加地区'
		},
	},
  computed: {
    cityInfos(){
      let infos = []
      this.citys = cityLists

      let province = this.citys.filter(o => {
        cityMap[o.regionId] = o.label
        return o.level === 1
      });

      province.map(p => {
        p.children = [];
        this.citys.map(o => {
          if (o.level === 2) {
            if (o.value.substr(0, 2) === p.value.substr(0, 2)) {
              p.children.push(o)
            }
          }
        })
      })

      infos = [
        {
          label: '全国',
          value: '000000',
          level: 0,
          children: province
        }
      ]
      return infos
    },
    checkedTreeNodes(){
      let list = this.$refs.selectCityTree.getCheckedNodes();
      return list
    }
  },
  methods: {
    setChecked () {
      this.$nextTick(() => {
        // 设置默认选中
        this.$refs.selectCityTree.setCheckedKeys(this.checkcitylist);
        this.treeChangeHandler();
      });
    },
    hideSelectCityHandler(){
      this.hideCitysHandler()
      this.showTrees = true
      this.searchText = ''
    },
    getCheckedList(){
      // console.log('this.checkedTreeNodes', this.checkedTreeNodes)
      return this.checkedTreeNodes;
    },
    getCityNameByRegionId(id){
      return cityMap[id]
    },
    showCitysHandler(){
      this.showCitys = true
      document.removeEventListener('click', this.hideSelectCityHandler)
      document.addEventListener('click', this.hideSelectCityHandler, false)
    },
    hideCitysHandler(){
      this.showCitys = false
      this.$emit('blur')
      document.removeEventListener('click', this.hideSelectCityHandler)
    },
    inputChangeHandler(){
      let searchKey = this.searchText.toUpperCase()
      let citys = this.citys;
      if(searchKey == ""){
        this.searchResultsList = []
      }else {
        this.searchResultsList = citys
        .filter( o => {
          return o.level === 1 || o.level === 2
        })
        .filter( o => {
          o.shortSpell = o.shortSpell || ''
          o.spell = o.spell || ''
          o.fullName = o.fullName || ''
          return o.shortSpell.toUpperCase().indexOf(searchKey) === 0
                  || o.spell.toUpperCase().indexOf(searchKey) === 0
                  || o.fullName.indexOf(searchKey) === 0
        })
      }

      this.showTrees = this.searchResultsList.length === 0
    },
    searchItemHandler(city, value){
      this.$refs.selectCityTree.setChecked(city.regionId, value, true);
    },
    treeChangeHandler(){
      if (!this.checkcitylist) {
        this.$emit('change', this.getCheckedList())
      }
      if(this.getCheckedList()[0] && this.getCheckedList()[0].value === '000000'){
        this.placeholderText = '全国地区'
      }else{
        this.placeholderText = this.getCheckedList().filter(o => o.level === 2 || o.level === 0).map(o => o.label).join(',') || this.placeholder || '请添加地区'
      }
    }
  }
}
</script>

组件的使用

// main.js

import Antd from 'ant-design-vue'
import 'ant-design-vue/dist/antd.css'
Vue.use(Antd)
/**
* 说明:setCheckedKeys接收的市城市code的数组:["1", "2"]
*/

// 引入

import SelectCity from '@/***/SelectCity';

// 组件名
components: {
    SelectCity
},

// html导入
<select-city ref="cityChild" placeholder="请选择省市" @change="getCityArr" v-model="selectedCityLists"></select-city>

// method
getCityArr(data) {
    console.log('data', data)
    this.selectedCityLists = data
},

补充

// 城市JSON

export const cityLists = [
  {
    "value": "110000",
    "label": "北京",
    "level": 1
  },
  {
    "value": "110100",
    "label": "北京",
    "pre": "京",
    "level": 2
  },
  {
    "value": "120000",
    "label": "天津",
    "level": 1
  },
  {
    "value": "120100",
    "label": "天津",
    "pre": "津",
    "level": 2
  },
  {
    "value": "130000",
    "label": "河北省",
    "level": 1
  },
  {
    "value": "130100",
    "label": "石家庄",
    "pre": "冀A",
    "level": 2
  },
  {
    "value": "130200",
    "label": "唐山",
    "pre": "冀B",
    "level": 2
  },
  {
    "value": "130300",
    "label": "秦皇岛",
    "pre": "冀C",
    "level": 2
  },
  {
    "value": "130400",
    "label": "邯郸",
    "pre": "冀D",
    "level": 2
  },
  {
    "value": "130500",
    "label": "邢台",
    "pre": "冀E",
    "level": 2
  },
  {
    "value": "130600",
    "label": "保定",
    "pre": "冀F",
    "level": 2
  },
  {
    "value": "130700",
    "label": "张家口",
    "pre": "冀G",
    "level": 2
  },
  {
    "value": "130800",
    "label": "承德",
    "pre": "冀H",
    "level": 2
  },
  {
    "value": "130900",
    "label": "沧州",
    "pre": "冀J",
    "level": 2
  },
  {
    "value": "131000",
    "label": "廊坊",
    "pre": "冀R",
    "level": 2
  },
  {
    "value": "131100",
    "label": "衡水",
    "pre": "冀T",
    "level": 2
  },
  {
    "value": "140000",
    "label": "山西省",
    "level": 1
  },
  {
    "value": "140100",
    "label": "太原",
    "pre": "晋A",
    "level": 2
  },
  {
    "value": "140200",
    "label": "大同",
    "pre": "晋B",
    "level": 2
  },
  {
    "value": "140300",
    "label": "阳泉",
    "pre": "晋C",
    "level": 2
  },
  {
    "value": "140400",
    "label": "长治",
    "pre": "晋D",
    "level": 2
  },
  {
    "value": "140500",
    "label": "晋城",
    "pre": "晋E",
    "level": 2
  },
  {
    "value": "140600",
    "label": "朔州",
    "pre": "晋F",
    "level": 2
  },
  {
    "value": "140700",
    "label": "晋中",
    "pre": "晋G",
    "level": 2
  },
  {
    "value": "140800",
    "label": "运城",
    "pre": "晋M",
    "level": 2
  },
  {
    "value": "140900",
    "label": "忻州",
    "pre": "晋H",
    "level": 2
  },
  {
    "value": "141000",
    "label": "临汾",
    "pre": "晋L",
    "level": 2
  },
  {
    "value": "141100",
    "label": "吕梁",
    "pre": "晋J",
    "level": 2
  },
  {
    "value": "150000",
    "label": "内蒙古",
    "level": 1
  },
  {
    "value": "150100",
    "label": "呼和浩特",
    "pre": "蒙A",
    "level": 2
  },
  {
    "value": "150200",
    "label": "包头",
    "pre": "蒙B",
    "level": 2
  },
  {
    "value": "150300",
    "label": "乌海",
    "pre": "蒙C",
    "level": 2
  },
  {
    "value": "150400",
    "label": "赤峰",
    "pre": "蒙D",
    "level": 2
  },
  {
    "value": "150500",
    "label": "通辽",
    "pre": "蒙G",
    "level": 2
  },
  {
    "value": "150600",
    "label": "鄂尔多斯",
    "pre": "蒙K",
    "level": 2
  },
  {
    "value": "150700",
    "label": "呼伦贝尔",
    "pre": "蒙E",
    "level": 2
  },
  {
    "value": "150800",
    "label": "巴彦淖尔",
    "pre": "蒙L",
    "level": 2
  },
  {
    "value": "150900",
    "label": "乌兰察布",
    "pre": "蒙J",
    "level": 2
  },
  {
    "value": "152200",
    "label": "兴安盟",
    "pre": "蒙F",
    "level": 2
  },
  {
    "value": "152500",
    "label": "锡林郭勒盟",
    "pre": "蒙H",
    "level": 2
  },
  {
    "value": "152900",
    "label": "阿拉善盟",
    "pre": "蒙M",
    "level": 2
  },
  {
    "value": "210000",
    "label": "辽宁省",
    "level": 1
  },
  {
    "value": "210100",
    "label": "沈阳",
    "pre": "辽A",
    "level": 2
  },
  {
    "value": "210200",
    "label": "大连",
    "pre": "辽B",
    "level": 2
  },
  {
    "value": "210300",
    "label": "鞍山",
    "pre": "辽C",
    "level": 2
  },
  {
    "value": "210400",
    "label": "抚顺",
    "pre": "辽D",
    "level": 2
  },
  {
    "value": "210500",
    "label": "本溪",
    "pre": "辽E",
    "level": 2
  },
  {
    "value": "210600",
    "label": "丹东",
    "pre": "辽F",
    "level": 2
  },
  {
    "value": "210700",
    "label": "锦州",
    "pre": "辽G",
    "level": 2
  },
  {
    "value": "210800",
    "label": "营口",
    "pre": "辽H",
    "level": 2
  },
  {
    "value": "210900",
    "label": "阜新",
    "pre": "辽J",
    "level": 2
  },
  {
    "value": "211000",
    "label": "辽阳",
    "pre": "辽K",
    "level": 2
  },
  {
    "value": "211100",
    "label": "盘锦",
    "pre": "辽L",
    "level": 2
  },
  {
    "value": "211200",
    "label": "铁岭",
    "pre": "辽M",
    "level": 2
  },
  {
    "value": "211300",
    "label": "朝阳",
    "pre": "辽N",
    "level": 2
  },
  {
    "value": "211400",
    "label": "葫芦岛",
    "pre": "辽P",
    "level": 2
  },
  {
    "value": "220000",
    "label": "吉林省",
    "level": 1
  },
  {
    "value": "220100",
    "label": "长春",
    "pre": "吉A",
    "level": 2
  },
  {
    "value": "220200",
    "label": "吉林",
    "pre": "吉B",
    "level": 2
  },
  {
    "value": "220300",
    "label": "四平",
    "pre": "吉C",
    "level": 2
  },
  {
    "value": "220400",
    "label": "辽源",
    "pre": "吉D",
    "level": 2
  },
  {
    "value": "220500",
    "label": "通化",
    "pre": "吉E",
    "level": 2
  },
  {
    "value": "220600",
    "label": "白山",
    "pre": "吉F",
    "level": 2
  },
  {
    "value": "220700",
    "label": "松原",
    "pre": "吉J",
    "level": 2
  },
  {
    "value": "220800",
    "label": "白城",
    "pre": "吉G",
    "level": 2
  },
  {
    "value": "222400",
    "label": "延边",
    "pre": "吉H",
    "level": 2
  },
  {
    "value": "230000",
    "label": "黑龙江省",
    "level": 1
  },
  {
    "value": "230100",
    "label": "哈尔滨",
    "pre": "黑A",
    "level": 2
  },
  {
    "value": "230200",
    "label": "齐齐哈尔",
    "pre": "黑B",
    "level": 2
  },
  {
    "value": "230300",
    "label": "鸡西",
    "pre": "黑G",
    "level": 2
  },
  {
    "value": "230400",
    "label": "鹤岗",
    "pre": "黑H",
    "level": 2
  },
  {
    "value": "230500",
    "label": "双鸭山",
    "pre": "黑J",
    "level": 2
  },
  {
    "value": "230600",
    "label": "大庆",
    "pre": "黑E",
    "level": 2
  },
  {
    "value": "230700",
    "label": "伊春",
    "pre": "黑F",
    "level": 2
  },
  {
    "value": "230800",
    "label": "佳木斯",
    "pre": "黑D",
    "level": 2
  },
  {
    "value": "230900",
    "label": "七台河",
    "pre": "黑K",
    "level": 2
  },
  {
    "value": "231000",
    "label": "牡丹江",
    "pre": "黑C",
    "level": 2
  },
  {
    "value": "231100",
    "label": "黑河",
    "pre": "黑N",
    "level": 2
  },
  {
    "value": "231200",
    "label": "绥化",
    "pre": "黑M",
    "level": 2
  },
  {
    "value": "232700",
    "label": "大兴安岭",
    "pre": "黑P",
    "level": 2
  },
  {
    "value": "310000",
    "label": "上海",
    "level": 1
  },
  {
    "value": "310100",
    "label": "上海",
    "pre": "沪",
    "level": 2
  },
  {
    "value": "320000",
    "label": "江苏省",
    "level": 1
  },
  {
    "value": "320100",
    "label": "南京",
    "pre": "苏A",
    "level": 2
  },
  {
    "value": "320200",
    "label": "无锡",
    "pre": "苏B",
    "level": 2
  },
  {
    "value": "320300",
    "label": "徐州",
    "pre": "苏C",
    "level": 2
  },
  {
    "value": "320400",
    "label": "常州",
    "pre": "苏D",
    "level": 2
  },
  {
    "value": "320500",
    "label": "苏州",
    "pre": "苏E",
    "level": 2
  },
  {
    "value": "320600",
    "label": "南通",
    "pre": "苏F",
    "level": 2
  },
  {
    "value": "320700",
    "label": "连云港",
    "pre": "苏G",
    "level": 2
  },
  {
    "value": "320800",
    "label": "淮安",
    "pre": "苏H",
    "level": 2
  },
  {
    "value": "320900",
    "label": "盐城",
    "pre": "苏J",
    "level": 2
  },
  {
    "value": "321000",
    "label": "扬州",
    "pre": "苏K",
    "level": 2
  },
  {
    "value": "321100",
    "label": "镇江",
    "pre": "苏L",
    "level": 2
  },
  {
    "value": "321200",
    "label": "泰州",
    "pre": "苏M",
    "level": 2
  },
  {
    "value": "321300",
    "label": "宿迁",
    "pre": "苏N",
    "level": 2
  },
  {
    "value": "330000",
    "label": "浙江省",
    "level": 1
  },
  {
    "value": "330100",
    "label": "杭州",
    "pre": "浙A",
    "level": 2
  },
  {
    "value": "330200",
    "label": "宁波",
    "pre": "浙B",
    "level": 2
  },
  {
    "value": "330300",
    "label": "温州",
    "pre": "浙C",
    "level": 2
  },
  {
    "value": "330400",
    "label": "嘉兴",
    "pre": "浙D",
    "level": 2
  },
  {
    "value": "330500",
    "label": "湖州",
    "pre": "浙E",
    "level": 2
  },
  {
    "value": "330600",
    "label": "绍兴",
    "pre": "浙D",
    "level": 2
  },
  {
    "value": "330700",
    "label": "金华",
    "pre": "浙G",
    "level": 2
  },
  {
    "value": "330800",
    "label": "衢州",
    "pre": "浙H",
    "level": 2
  },
  {
    "value": "330900",
    "label": "舟山",
    "pre": "浙L",
    "level": 2
  },
  {
    "value": "331000",
    "label": "台州",
    "pre": "浙J",
    "level": 2
  },
  {
    "value": "331100",
    "label": "丽水",
    "pre": "浙K",
    "level": 2
  },
  {
    "value": "340000",
    "label": "安徽省",
    "level": 1
  },
  {
    "value": "340100",
    "label": "合肥",
    "pre": "皖A",
    "level": 2
  },
  {
    "value": "340200",
    "label": "芜湖",
    "pre": "皖B",
    "level": 2
  },
  {
    "value": "340300",
    "label": "蚌埠",
    "pre": "皖C",
    "level": 2
  },
  {
    "value": "340400",
    "label": "淮南",
    "pre": "皖D",
    "level": 2
  },
  {
    "value": "340500",
    "label": "马鞍山",
    "pre": "皖E",
    "level": 2
  },
  {
    "value": "340600",
    "label": "淮北",
    "pre": "皖F",
    "level": 2
  },
  {
    "value": "340700",
    "label": "铜陵",
    "pre": "皖G",
    "level": 2
  },
  {
    "value": "340800",
    "label": "安庆",
    "pre": "皖H",
    "level": 2
  },
  {
    "value": "341000",
    "label": "黄山",
    "pre": "皖J",
    "level": 2
  },
  {
    "value": "341100",
    "label": "滁州",
    "pre": "皖M",
    "level": 2
  },
  {
    "value": "341200",
    "label": "阜阳",
    "pre": "皖K",
    "level": 2
  },
  {
    "value": "341300",
    "label": "宿州",
    "pre": "皖L",
    "level": 2
  },
  {
    "value": "341500",
    "label": "六安",
    "pre": "皖N",
    "level": 2
  },
  {
    "value": "341600",
    "label": "亳州",
    "pre": "皖S",
    "level": 2
  },
  {
    "value": "341700",
    "label": "池州",
    "pre": "皖R",
    "level": 2
  },
  {
    "value": "341800",
    "label": "宣城",
    "pre": "皖P",
    "level": 2
  },
  {
    "value": "350000",
    "label": "福建省",
    "level": 1
  },
  {
    "value": "350100",
    "label": "福州",
    "pre": "闽A",
    "level": 2
  },
  {
    "value": "350200",
    "label": "厦门",
    "pre": "闽D",
    "level": 2
  },
  {
    "value": "350300",
    "label": "莆田",
    "pre": "闽B",
    "level": 2
  },
  {
    "value": "350400",
    "label": "三明",
    "pre": "闽G",
    "level": 2
  },
  {
    "value": "350500",
    "label": "泉州",
    "pre": "闽C",
    "level": 2
  },
  {
    "value": "350600",
    "label": "漳州",
    "pre": "闽E",
    "level": 2
  },
  {
    "value": "350700",
    "label": "南平",
    "pre": "闽H",
    "level": 2
  },
  {
    "value": "350800",
    "label": "龙岩",
    "pre": "闽F",
    "level": 2
  },
  {
    "value": "350900",
    "label": "宁德",
    "pre": "闽J",
    "level": 2
  },
  {
    "value": "360000",
    "label": "江西省",
    "level": 1
  },
  {
    "value": "360100",
    "label": "南昌",
    "pre": "赣A",
    "level": 2
  },
  {
    "value": "360200",
    "label": "景德镇",
    "pre": "赣H",
    "level": 2
  },
  {
    "value": "360300",
    "label": "萍乡",
    "pre": "赣J",
    "level": 2
  },
  {
    "value": "360400",
    "label": "九江",
    "pre": "赣G",
    "level": 2
  },
  {
    "value": "360500",
    "label": "新余",
    "pre": "赣K",
    "level": 2
  },
  {
    "value": "360600",
    "label": "鹰潭",
    "pre": "赣L",
    "level": 2
  },
  {
    "value": "360700",
    "label": "赣州",
    "pre": "赣B",
    "level": 2
  },
  {
    "value": "360800",
    "label": "吉安",
    "pre": "赣D",
    "level": 2
  },
  {
    "value": "360900",
    "label": "宜春",
    "pre": "赣C",
    "level": 2
  },
  {
    "value": "361000",
    "label": "抚州",
    "pre": "赣F",
    "level": 2
  },
  {
    "value": "361100",
    "label": "上饶",
    "pre": "赣E",
    "level": 2
  },
  {
    "value": "370000",
    "label": "山东省",
    "level": 1
  },
  {
    "value": "370100",
    "label": "济南",
    "pre": "鲁A",
    "level": 2
  },
  {
    "value": "370200",
    "label": "青岛",
    "pre": "鲁B",
    "level": 2
  },
  {
    "value": "370300",
    "label": "淄博",
    "pre": "鲁C",
    "level": 2
  },
  {
    "value": "370400",
    "label": "枣庄",
    "pre": "鲁D",
    "level": 2
  },
  {
    "value": "370500",
    "label": "东营",
    "pre": "鲁E",
    "level": 2
  },
  {
    "value": "370600",
    "label": "烟台",
    "pre": "鲁F",
    "level": 2
  },
  {
    "value": "370700",
    "label": "潍坊",
    "pre": "鲁G",
    "level": 2
  },
  {
    "value": "370800",
    "label": "济宁",
    "pre": "鲁H",
    "level": 2
  },
  {
    "value": "370900",
    "label": "泰安",
    "pre": "鲁J",
    "level": 2
  },
  {
    "value": "371000",
    "label": "威海",
    "pre": "鲁K",
    "level": 2
  },
  {
    "value": "371100",
    "label": "日照",
    "pre": "鲁L",
    "level": 2
  },
  {
    "value": "371200",
    "label": "莱芜",
    "pre": "鲁S",
    "level": 2
  },
  {
    "value": "371300",
    "label": "临沂",
    "pre": "鲁Q",
    "level": 2
  },
  {
    "value": "371400",
    "label": "德州",
    "pre": "鲁N",
    "level": 2
  },
  {
    "value": "371500",
    "label": "聊城",
    "pre": "鲁P",
    "level": 2
  },
  {
    "value": "371600",
    "label": "滨州",
    "pre": "鲁M",
    "level": 2
  },
  {
    "value": "371700",
    "label": "菏泽",
    "pre": "鲁R",
    "level": 2
  },
  {
    "value": "410000",
    "label": "河南省",
    "level": 1
  },
  {
    "value": "410100",
    "label": "郑州",
    "pre": "豫A",
    "level": 2
  },
  {
    "value": "410200",
    "label": "开封",
    "pre": "豫B",
    "level": 2
  },
  {
    "value": "410300",
    "label": "洛阳",
    "pre": "豫C",
    "level": 2
  },
  {
    "value": "410400",
    "label": "平顶山",
    "pre": "豫D",
    "level": 2
  },
  {
    "value": "410500",
    "label": "安阳",
    "pre": "豫E",
    "level": 2
  },
  {
    "value": "410600",
    "label": "鹤壁",
    "pre": "豫F",
    "level": 2
  },
  {
    "value": "410700",
    "label": "新乡",
    "pre": "豫G",
    "level": 2
  },
  {
    "value": "410800",
    "label": "焦作",
    "pre": "豫H",
    "level": 2
  },
  {
    "value": "410900",
    "label": "濮阳",
    "pre": "豫J",
    "level": 2
  },
  {
    "value": "411000",
    "label": "许昌",
    "pre": "豫K",
    "level": 2
  },
  {
    "value": "411100",
    "label": "漯河",
    "pre": "豫L",
    "level": 2
  },
  {
    "value": "411200",
    "label": "三门峡",
    "pre": "豫M",
    "level": 2
  },
  {
    "value": "411300",
    "label": "南阳",
    "pre": "豫R",
    "level": 2
  },
  {
    "value": "411400",
    "label": "商丘",
    "pre": "豫N",
    "level": 2
  },
  {
    "value": "411500",
    "label": "信阳",
    "pre": "豫S",
    "level": 2
  },
  {
    "value": "411600",
    "label": "周口",
    "pre": "豫P",
    "level": 2
  },
  {
    "value": "411700",
    "label": "驻马店",
    "pre": "豫Q",
    "level": 2
  },
  {
    "value": "419001",
    "label": "济源",
    "pre": "豫U",
    "level": 2
  },
  {
    "value": "420000",
    "label": "湖北省",
    "level": 1
  },
  {
    "value": "420100",
    "label": "武汉",
    "pre": "鄂A",
    "level": 2
  },
  {
    "value": "420200",
    "label": "黄石",
    "pre": "鄂B",
    "level": 2
  },
  {
    "value": "420300",
    "label": "十堰",
    "pre": "鄂C",
    "level": 2
  },
  {
    "value": "420500",
    "label": "宜昌",
    "pre": "鄂E",
    "level": 2
  },
  {
    "value": "420600",
    "label": "襄樊",
    "pre": "鄂F",
    "level": 2
  },
  {
    "value": "420700",
    "label": "鄂州",
    "pre": "鄂G",
    "level": 2
  },
  {
    "value": "420800",
    "label": "荆门",
    "pre": "鄂H",
    "level": 2
  },
  {
    "value": "420900",
    "label": "孝感",
    "pre": "鄂K",
    "level": 2
  },
  {
    "value": "421000",
    "label": "荆州",
    "pre": "鄂D",
    "level": 2
  },
  {
    "value": "421100",
    "label": "黄冈",
    "pre": "鄂J",
    "level": 2
  },
  {
    "value": "421200",
    "label": "咸宁",
    "pre": "鄂L",
    "level": 2
  },
  {
    "value": "421300",
    "label": "随州",
    "pre": "鄂S",
    "level": 2
  },
  {
    "value": "422800",
    "label": "恩施",
    "pre": "鄂Q",
    "level": 2
  },
  {
    "value": "429004",
    "label": "仙桃",
    "pre": "鄂M",
    "level": 2
  },
  {
    "value": "429005",
    "label": "潜江",
    "pre": "鄂N",
    "level": 2
  },
  {
    "value": "429006",
    "label": "天门",
    "pre": "鄂R",
    "level": 2
  },
  {
    "value": "429021",
    "label": "神农",
    "pre": "鄂P",
    "level": 2
  },
  {
    "value": "430000",
    "label": "湖南省",
    "level": 1
  },
  {
    "value": "430100",
    "label": "长沙",
    "pre": "湘A",
    "level": 2
  },
  {
    "value": "430200",
    "label": "株洲",
    "pre": "湘B",
    "level": 2
  },
  {
    "value": "430300",
    "label": "湘潭",
    "pre": "湘C",
    "level": 2
  },
  {
    "value": "430400",
    "label": "衡阳",
    "pre": "湘D",
    "level": 2
  },
  {
    "value": "430500",
    "label": "邵阳",
    "pre": "湘E",
    "level": 2
  },
  {
    "value": "430600",
    "label": "岳阳",
    "pre": "湘F",
    "level": 2
  },
  {
    "value": "430700",
    "label": "常德",
    "pre": "湘J",
    "level": 2
  },
  {
    "value": "430800",
    "label": "张家界",
    "pre": "湘G",
    "level": 2
  },
  {
    "value": "430900",
    "label": "益阳",
    "pre": "湘H",
    "level": 2
  },
  {
    "value": "431000",
    "label": "郴州",
    "pre": "湘L",
    "level": 2
  },
  {
    "value": "431100",
    "label": "永州",
    "pre": "湘M",
    "level": 2
  },
  {
    "value": "431200",
    "label": "怀化",
    "pre": "湘N",
    "level": 2
  },
  {
    "value": "431300",
    "label": "娄底",
    "pre": "湘K",
    "level": 2
  },
  {
    "value": "433100",
    "label": "湘西",
    "pre": "湘U",
    "level": 2
  },
  {
    "value": "440000",
    "label": "广东省",
    "level": 1
  },
  {
    "value": "440100",
    "label": "广州",
    "pre": "粤A",
    "level": 2
  },
  {
    "value": "440200",
    "label": "韶关",
    "pre": "粤F",
    "level": 2
  },
  {
    "value": "440300",
    "label": "深圳",
    "pre": "粤B",
    "level": 2
  },
  {
    "value": "440400",
    "label": "珠海",
    "pre": "粤C",
    "level": 2
  },
  {
    "value": "440500",
    "label": "汕头",
    "pre": "粤D",
    "level": 2
  },
  {
    "value": "440600",
    "label": "佛山",
    "pre": "粤E",
    "level": 2
  },
  {
    "value": "440700",
    "label": "江门",
    "pre": "粤J",
    "level": 2
  },
  {
    "value": "440800",
    "label": "湛江",
    "pre": "粤G",
    "level": 2
  },
  {
    "value": "440900",
    "label": "茂名",
    "pre": "粤K",
    "level": 2
  },
  {
    "value": "441200",
    "label": "肇庆",
    "pre": "粤H",
    "level": 2
  },
  {
    "value": "441300",
    "label": "惠州",
    "pre": "粤L",
    "level": 2
  },
  {
    "value": "441400",
    "label": "梅州",
    "pre": "粤M",
    "level": 2
  },
  {
    "value": "441500",
    "label": "汕尾",
    "pre": "粤N",
    "level": 2
  },
  {
    "value": "441600",
    "label": "河源",
    "pre": "粤P",
    "level": 2
  },
  {
    "value": "441700",
    "label": "阳江",
    "pre": "粤Q",
    "level": 2
  },
  {
    "value": "441800",
    "label": "清远",
    "pre": "粤R",
    "level": 2
  },
  {
    "value": "441900",
    "label": "东莞",
    "pre": "粤S",
    "level": 2
  },
  {
    "value": "442000",
    "label": "中山",
    "pre": "粤T",
    "level": 2
  },
  {
    "value": "445100",
    "label": "潮州",
    "pre": "粤U",
    "level": 2
  },
  {
    "value": "445200",
    "label": "揭阳",
    "pre": "粤V",
    "level": 2
  },
  {
    "value": "445300",
    "label": "云浮",
    "pre": "粤W",
    "level": 2
  },
  {
    "value": "450000",
    "label": "广西省",
    "level": 1
  },
  {
    "value": "450100",
    "label": "南宁",
    "pre": "桂A",
    "level": 2
  },
  {
    "value": "450200",
    "label": "柳州",
    "pre": "桂B",
    "level": 2
  },
  {
    "value": "450300",
    "label": "桂林",
    "pre": "桂C",
    "level": 2
  },
  {
    "value": "450400",
    "label": "梧州",
    "pre": "桂D",
    "level": 2
  },
  {
    "value": "450500",
    "label": "北海",
    "pre": "桂E",
    "level": 2
  },
  {
    "value": "450600",
    "label": "防城港",
    "pre": "桂P",
    "level": 2
  },
  {
    "value": "450700",
    "label": "钦州",
    "pre": "桂N",
    "level": 2
  },
  {
    "value": "450800",
    "label": "贵港",
    "pre": "桂R",
    "level": 2
  },
  {
    "value": "450900",
    "label": "玉林",
    "pre": "桂K",
    "level": 2
  },
  {
    "value": "451000",
    "label": "百色",
    "pre": "桂L",
    "level": 2
  },
  {
    "value": "451100",
    "label": "贺州",
    "pre": "桂J",
    "level": 2
  },
  {
    "value": "451200",
    "label": "河池",
    "pre": "桂M",
    "level": 2
  },
  {
    "value": "451300",
    "label": "来宾",
    "pre": "桂G",
    "level": 2
  },
  {
    "value": "451400",
    "label": "崇左",
    "pre": "桂F",
    "level": 2
  },
  {
    "value": "460000",
    "label": "海南省",
    "level": 1
  },
  {
    "value": "460100",
    "label": "海口",
    "pre": "琼A",
    "level": 2
  },
  {
    "value": "460200",
    "label": "三亚",
    "pre": "琼B",
    "level": 2
  },
  {
    "value": "460300",
    "label": "三沙",
    "pre": "琼C",
    "level": 2
  },
  {
    "value": "469001",
    "label": "五指山",
    "pre": "琼D",
    "level": 2
  },
  {
    "value": "469002",
    "label": "琼海",
    "pre": "琼C",
    "level": 2
  },
  {
    "value": "469003",
    "label": "儋州",
    "pre": "琼F",
    "level": 2
  },
  {
    "value": "469005",
    "label": "文昌",
    "pre": "琼C",
    "level": 2
  },
  {
    "value": "469006",
    "label": "万宁",
    "pre": "琼C",
    "level": 2
  },
  {
    "value": "469007",
    "label": "东方",
    "pre": "琼D",
    "level": 2
  },
  {
    "value": "500000",
    "label": "重庆",
    "level": 1
  },
  {
    "value": "500100",
    "label": "重庆",
    "pre": "渝",
    "level": 2
  },
  {
    "value": "510000",
    "label": "四川省",
    "level": 1
  },
  {
    "value": "510100",
    "label": "成都",
    "pre": "川A",
    "level": 2
  },
  {
    "value": "510300",
    "label": "自贡",
    "pre": "川C",
    "level": 2
  },
  {
    "value": "510400",
    "label": "攀枝花",
    "pre": "川D",
    "level": 2
  },
  {
    "value": "510500",
    "label": "泸州",
    "pre": "川E",
    "level": 2
  },
  {
    "value": "510600",
    "label": "德阳",
    "pre": "川F",
    "level": 2
  },
  {
    "value": "510700",
    "label": "绵阳",
    "pre": "川B",
    "level": 2
  },
  {
    "value": "510800",
    "label": "广元",
    "pre": "川H",
    "level": 2
  },
  {
    "value": "510900",
    "label": "遂宁",
    "pre": "川J",
    "level": 2
  },
  {
    "value": "511000",
    "label": "内江",
    "pre": "川K",
    "level": 2
  },
  {
    "value": "511100",
    "label": "乐山",
    "pre": "川L",
    "level": 2
  },
  {
    "value": "511300",
    "label": "南充",
    "pre": "川R",
    "level": 2
  },
  {
    "value": "511400",
    "label": "眉山",
    "pre": "川Z",
    "level": 2
  },
  {
    "value": "511500",
    "label": "宜宾",
    "pre": "川Q",
    "level": 2
  },
  {
    "value": "511600",
    "label": "广安",
    "pre": "川X",
    "level": 2
  },
  {
    "value": "511700",
    "label": "达州",
    "pre": "川S",
    "level": 2
  },
  {
    "value": "511800",
    "label": "雅安",
    "pre": "川T",
    "level": 2
  },
  {
    "value": "511900",
    "label": "巴中",
    "pre": "川Y",
    "level": 2
  },
  {
    "value": "512000",
    "label": "资阳",
    "pre": "川M",
    "level": 2
  },
  {
    "value": "513200",
    "label": "阿坝",
    "pre": "川U",
    "level": 2
  },
  {
    "value": "513300",
    "label": "甘孜",
    "pre": "川V",
    "level": 2
  },
  {
    "value": "513400",
    "label": "凉山",
    "pre": "川W",
    "level": 2
  },
  {
    "value": "520000",
    "label": "贵州省",
    "level": 1
  },
  {
    "value": "520100",
    "label": "贵阳",
    "pre": "贵A",
    "level": 2
  },
  {
    "value": "520200",
    "label": "六盘水",
    "pre": "贵B",
    "level": 2
  },
  {
    "value": "520300",
    "label": "遵义",
    "pre": "贵C",
    "level": 2
  },
  {
    "value": "520400",
    "label": "安顺",
    "pre": "贵G",
    "level": 2
  },
  {
    "value": "520500",
    "label": "毕节",
    "pre": "贵F",
    "level": 2
  },
  {
    "value": "520600",
    "label": "铜仁",
    "pre": "贵D",
    "level": 2
  },
  {
    "value": "522300",
    "label": "黔西",
    "pre": "贵E",
    "level": 2
  },
  {
    "value": "522600",
    "label": "黔东",
    "pre": "贵H",
    "level": 2
  },
  {
    "value": "522700",
    "label": "黔南",
    "pre": "贵J",
    "level": 2
  },
  {
    "value": "530000",
    "label": "云南省",
    "level": 1
  },
  {
    "value": "530100",
    "label": "昆明",
    "pre": "云A",
    "level": 2
  },
  {
    "value": "530300",
    "label": "曲靖",
    "pre": "云D",
    "level": 2
  },
  {
    "value": "530400",
    "label": "玉溪",
    "pre": "云F",
    "level": 2
  },
  {
    "value": "530500",
    "label": "保山",
    "pre": "云M",
    "level": 2
  },
  {
    "value": "530600",
    "label": "昭通",
    "pre": "云C",
    "level": 2
  },
  {
    "value": "530700",
    "label": "丽江",
    "pre": "云P",
    "level": 2
  },
  {
    "value": "530800",
    "label": "普洱",
    "pre": "云J",
    "level": 2
  },
  {
    "value": "530900",
    "label": "临沧",
    "pre": "云S",
    "level": 2
  },
  {
    "value": "532300",
    "label": "楚雄",
    "pre": "云E",
    "level": 2
  },
  {
    "value": "532500",
    "label": "红河",
    "pre": "云G",
    "level": 2
  },
  {
    "value": "532600",
    "label": "文山",
    "pre": "云H",
    "level": 2
  },
  {
    "value": "532800",
    "label": "西双版纳",
    "pre": "云K",
    "level": 2
  },
  {
    "value": "532900",
    "label": "大理",
    "pre": "云L",
    "level": 2
  },
  {
    "value": "533100",
    "label": "德宏",
    "pre": "云N",
    "level": 2
  },
  {
    "value": "533300",
    "label": "怒江",
    "pre": "云Q",
    "level": 2
  },
  {
    "value": "533400",
    "label": "迪庆",
    "pre": "云R",
    "level": 2
  },
  {
    "value": "540000",
    "label": "西藏",
    "level": 1
  },
  {
    "value": "540100",
    "label": "拉萨",
    "pre": "藏A",
    "level": 2
  },
  {
    "value": "540200",
    "label": "日喀则",
    "pre": "藏D",
    "level": 2
  },
  {
    "value": "542100",
    "label": "昌都",
    "pre": "藏B",
    "level": 2
  },
  {
    "value": "542200",
    "label": "山南",
    "pre": "藏C",
    "level": 2
  },
  {
    "value": "542400",
    "label": "那曲",
    "pre": "藏E",
    "level": 2
  },
  {
    "value": "542500",
    "label": "阿里",
    "pre": "藏F",
    "level": 2
  },
  {
    "value": "542600",
    "label": "林芝",
    "pre": "藏G",
    "level": 2
  },
  {
    "value": "610000",
    "label": "陕西省",
    "level": 1
  },
  {
    "value": "610100",
    "label": "西安",
    "pre": "陕A",
    "level": 2
  },
  {
    "value": "610200",
    "label": "铜川",
    "pre": "陕B",
    "level": 2
  },
  {
    "value": "610300",
    "label": "宝鸡",
    "pre": "陕C",
    "level": 2
  },
  {
    "value": "610400",
    "label": "咸阳",
    "pre": "陕D",
    "level": 2
  },
  {
    "value": "610500",
    "label": "渭南",
    "pre": "陕E",
    "level": 2
  },
  {
    "value": "610600",
    "label": "延安",
    "pre": "陕J",
    "level": 2
  },
  {
    "value": "610700",
    "label": "汉中",
    "pre": "陕F",
    "level": 2
  },
  {
    "value": "610800",
    "label": "榆林",
    "pre": "陕K",
    "level": 2
  },
  {
    "value": "610900",
    "label": "安康",
    "pre": "陕G",
    "level": 2
  },
  {
    "value": "611000",
    "label": "商洛",
    "pre": "陕H",
    "level": 2
  },
  {
    "value": "620000",
    "label": "甘肃省",
    "level": 1
  },
  {
    "value": "620100",
    "label": "兰州",
    "pre": "甘A",
    "level": 2
  },
  {
    "value": "620200",
    "label": "嘉峪关",
    "pre": "甘B",
    "level": 2
  },
  {
    "value": "620300",
    "label": "金昌",
    "pre": "甘C",
    "level": 2
  },
  {
    "value": "620400",
    "label": "白银",
    "pre": "甘D",
    "level": 2
  },
  {
    "value": "620500",
    "label": "天水",
    "pre": "甘E",
    "level": 2
  },
  {
    "value": "620600",
    "label": "武威",
    "pre": "甘H",
    "level": 2
  },
  {
    "value": "620700",
    "label": "张掖",
    "pre": "甘G",
    "level": 2
  },
  {
    "value": "620800",
    "label": "平凉",
    "pre": "甘L",
    "level": 2
  },
  {
    "value": "620900",
    "label": "酒泉",
    "pre": "甘F",
    "level": 2
  },
  {
    "value": "621000",
    "label": "庆阳",
    "pre": "甘M",
    "level": 2
  },
  {
    "value": "621100",
    "label": "定西",
    "pre": "甘J",
    "level": 2
  },
  {
    "value": "621200",
    "label": "陇南",
    "pre": "甘K",
    "level": 2
  },
  {
    "value": "622900",
    "label": "临夏",
    "pre": "甘N",
    "level": 2
  },
  {
    "value": "623000",
    "label": "甘南",
    "pre": "甘P",
    "level": 2
  },
  {
    "value": "630000",
    "label": "青海省",
    "level": 1
  },
  {
    "value": "630100",
    "label": "西宁",
    "pre": "青A",
    "level": 2
  },
  {
    "value": "630200",
    "label": "海东",
    "pre": "青B",
    "level": 2
  },
  {
    "value": "632200",
    "label": "海北",
    "pre": "青C",
    "level": 2
  },
  {
    "value": "632300",
    "label": "黄南",
    "pre": "青D",
    "level": 2
  },
  {
    "value": "632500",
    "label": "海南(青海省)",
    "pre": "青E",
    "level": 2
  },
  {
    "value": "632600",
    "label": "果洛",
    "pre": "青F",
    "level": 2
  },
  {
    "value": "632700",
    "label": "玉树",
    "pre": "青G",
    "level": 2
  },
  {
    "value": "632800",
    "label": "海西蒙",
    "pre": "青H",
    "level": 2
  },
  {
    "value": "640000",
    "label": "宁夏省",
    "level": 1
  },
  {
    "value": "640100",
    "label": "银川",
    "pre": "宁A",
    "level": 2
  },
  {
    "value": "640200",
    "label": "石嘴山",
    "pre": "宁B",
    "level": 2
  },
  {
    "value": "640300",
    "label": "吴忠",
    "pre": "宁C",
    "level": 2
  },
  {
    "value": "640400",
    "label": "固原",
    "pre": "宁D",
    "level": 2
  },
  {
    "value": "640500",
    "label": "中卫",
    "pre": "宁E",
    "level": 2
  },
  {
    "value": "650000",
    "label": "新疆",
    "level": 1
  },
  {
    "value": "650100",
    "label": "乌鲁木齐",
    "pre": "新A",
    "level": 2
  },
  {
    "value": "650200",
    "label": "克拉玛依",
    "pre": "新J",
    "level": 2
  },
  {
    "value": "652100",
    "label": "吐鲁番",
    "pre": "新K",
    "level": 2
  },
  {
    "value": "652200",
    "label": "哈密",
    "pre": "新L",
    "level": 2
  },
  {
    "value": "652300",
    "label": "昌吉",
    "pre": "新B",
    "level": 2
  },
  {
    "value": "652700",
    "label": "博尔塔拉",
    "pre": "新E",
    "level": 2
  },
  {
    "value": "652800",
    "label": "巴音郭楞",
    "pre": "新M",
    "level": 2
  },
  {
    "value": "652900",
    "label": "阿克苏",
    "pre": "新N",
    "level": 2
  },
  {
    "value": "653000",
    "label": "克孜勒苏",
    "pre": "新P",
    "level": 2
  },
  {
    "value": "653100",
    "label": "喀什",
    "pre": "新Q",
    "level": 2
  },
  {
    "value": "653200",
    "label": "和田",
    "pre": "新R",
    "level": 2
  },
  {
    "value": "654000",
    "label": "伊犁",
    "pre": "新F",
    "level": 2
  },
  {
    "value": "654002",
    "label": "伊宁",
    "pre": "新F",
    "level": 2
  },
  {
    "value": "654003",
    "label": "奎屯",
    "pre": "新D",
    "level": 2
  },
  {
    "value": "654200",
    "label": "塔城",
    "pre": "新G",
    "level": 2
  },
  {
    "value": "654300",
    "label": "阿勒泰",
    "pre": "新H",
    "level": 2
  },
  {
    "value": "659001",
    "label": "石河子",
    "pre": "新C",
    "level": 2
  },
  {
    "value": "659002",
    "label": "阿拉尔",
    "pre": "新N",
    "level": 2
  },
  {
    "value": "659003",
    "label": "图木舒克",
    "pre": "新Q",
    "level": 2
  },
  {
    "value": "659004",
    "label": "五家渠",
    "pre": "新B",
    "level": 2
  }
]
版权声明:本文来源CSDN,感谢博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/qq_21895821/article/details/90768510
站方申明:本站部分内容来自社区用户分享,若涉及侵权,请联系站方删除。

0 条评论

请先 登录 后评论

官方社群

GO教程

猜你喜欢