Element UI 中国省市区级联

一、安装

npm install element-china-area-data -S

二、使用

import { provinceAndCityData, regionData, provinceAndCityDataPlus, regionDataPlus, codeToText, textToCode } from 'element-china-area-data'

服务端使用

const { provinceAndCityData, regionData, provinceAndCityDataPlus, regionDataPlus, CodeToText, TextToCode } = require('element-china-area-data/dist/app.commonjs')

说明:

provinceAndCityData是省市二级联动数据(不带“全部”选项)
regionData是省市区三级联动数据(不带“全部”选项)
provinceAndCityDataPlus是省市区三级联动数据(带“全部”选项)
regionDataPlus是省市区三级联动数据(带“全部”选项)
"全部"选项绑定的value是空字符串""
codeToText是个大对象,属性是区域码,属性值是汉字 用法例如:codeToText['110000']输出北京市
textToCode是个大对象,属性是汉字,属性值是区域码 用法例如:textToCode['北京市'].code输出110000,TextToCode['北京市']['市辖区'].code输出110100,TextToCode['北京市']['市辖区']['朝阳区'].code输出110105

三、示例

1、省市二级联动(不带“全部”选项):

<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>

2、省市二级联动(带“全部”选项):

<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、省市区三级联动(不带“全部”选项)

<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>

4、省市区三级联动(带“全部”选项)

<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>

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Vue Element UI 提供了一些组件和方法来实现省市区联动选择。以下是一种实现方式: 1. 安装 Element UI:首先确保你的项目中已经安装了 Vue 和 Element UI。如果没有安装,可以使用 npm 或者 yarn 进行安装: ```bash npm install element-ui --save # 或者 yarn add element-ui ``` 2. 引入需要的组件:在你的 Vue 项目入口文件(一般是 main.js)中,引入 Element UI 的样式和需要的组件: ```javascript import Vue from 'vue'; import ElementUI from 'element-ui'; import 'element-ui/lib/theme-chalk/index.css'; Vue.use(ElementUI); ``` 3. 创建组件:创建一个包含省市区选择的组件,可以使用 `el-cascader` 组件来实现: ```vue <template> <div> <el-cascader :options="options" v-model="selectedValues" :props="props" @change="handleCascaderChange" ></el-cascader> </div> </template> <script> export default { data() { return { options: [ { value: 'province1', label: '省份1', children: [ { value: 'city1', label: '城市1', children: [ { value: 'district1', label: '区域1' }, { value: 'district2', label: '区域2' } ] }, { value: 'city2', label: '城市2', children: [ { value: 'district3', label: '区域3' }, { value: 'district4', label: '区域4' } ] } ] }, // 其他省市区数据 ], selectedValues: [] }; }, computed: { props() { return { value: 'value', label: 'label', children: 'children' }; } }, methods: { handleCascaderChange(selectedValues) { // 处理省市区选择变化的逻辑 console.log(selectedValues); } } }; </script> ``` 在上面的代码中,通过 `options` 数组来定义省市区的数据结构,然后使用 `el-cascader` 组件来展示选择框。`v-model` 指令绑定选中的值,`@change` 事件监听选择变化。 这样就实现了一个简单的省市区联动选择。你可以根据实际需求自定义数据结构和样式。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值