Vue如何使用vue-area-linkage实现地址三级联动效果

很多时候我们需要使用地址三级联动,即省市区三级联动。网上有很多插件,在此介绍Vue的一款地区联动插件:vue-area-linkage,下面介绍如何使用这个插件实现地址联动效果:

一、安装

// v5之前的版本
npm i --save vue-area-linkage

// v5及之后的版本
npm i --save vue-area-linkage area-data

or yarn

// v5之前的版本
yarn add vue-area-linkage

// v5及之后的版本
yarn add vue-area-linkage area-data

二、在main.js上进行依赖注入

import Vue from ‘vue‘;
import { pca, pcaa } from ‘area-data‘; // v5 or higher
import ‘vue-area-linkage/dist/index.css‘; // v2 or higher
import VueAreaLinkage from ‘vue-area-linkage‘;

Vue.use(VueAreaLinkage)

三、组件中使用

// v5之前的版本
<area-select v-model="selected"></area-select>
<area-cascader v-model="selected2"></area-cascader>

// v5及之后的版本
<area-select v-model="selected" :data="pca"></area-select> // 省市
// 省市区:<area-select v-model="selected" :data="pcaa"></area-select>
<area-cascader v-model="selected2" :data="pca"></area-cascader> // 省市
// 省市区:<area-cascader v-model="selected2" :data="pcaa"></area-cascader>

//setting
<area-select type=‘all‘ :level=‘2‘ v-model="selected" :data="pcaa"></area-select>
<area-cascader type=‘all‘ v-model="selected2" :level=‘1‘ :data="pcaa"></area-cascader>

组件中还需要引入

import { pca, pcaa } from ‘area-data‘;

同时data数据中

selected: [],
pca: pca,
pcaa: pcaa

属性

area-select 组件

参数 类型 可选值 默认值 说明
type String all/code/text code 设置返回的数据格式
placeholders Array - [] 设置 placeholder text
level Number 0/1/2 1 设置联动层级(0-只选省份/1-省市联动/2-省市区联动)
size String small/medium/large medium 设置输入框的大小
disabled Boolean - false 是否禁用
data Object - - 地区数据

type值可以更改返回的数据格式很有用

v4 仅支持省市区联动,即 v4 不再支持 level 的值为 3(省市区街联动)

area-cascader 组件

参数 类型 可选值 默认值 说明
type String all/code/text code 设置返回的数据格式
placeholder String - ‘‘ 设置 placeholder text
level Number 0/1 0 设置联动层级(0-省市联动/1-省市区联动)
size String small/medium/large medium 设置输入框的大小
separator String - ‘-‘ 显示选中文本的分隔符
disabled Boolean - false 是否禁用
data Object - - 地区数据

另:

  大家可以看到只是出现基本的效果,而样式看起来很不舒服,这是因为该插件的UI基于Element UI,所以如果需要使用样式需要依赖Element UI。但是很多情况下设计图的样式都是我们自定义的,此时可以自行修改样式代码,只需要在文件中写多一个公共的style文件修改对应的类名样式来覆盖之前的样式代码即可,需注意这个style文件不可以加上scoped。

原文地址:https://www.cnblogs.com/haonanZhang/p/9334103.html

时间: 2024-08-29 07:17:14

Vue如何使用vue-area-linkage实现地址三级联动效果的相关文章

中国省市区地址三级联动jQuery插件 案例下载

中国省市区地址三级联动jQuery插件 案例下载 distpicker 是一款可以实现中国省市区地址三级联动jQuery插件.它使用简单,简单设置即可完成中国省市区地址联动效果. 安装 可以通过npm或bower来安装该三级联动插件. npm install distpicker bower install distpicker 使用方法 HTML结构 基本的HTML结构是使用一个<div>容器来包裹一组<select>元素. <div><!-- containe

ajax地址三级联动下拉表

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <

ios收货地址三级联动选择

这次的需求,是省市区三级联动选择,并且市的选择要根据省的id,然后区的选择要根据市的id 每次都要进行网络请求,关键代码,其实是 //监听轮子的移动 - (void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component; 然后我就上传我的代码,这个代码我也是根据别人的修改的,因为需求不一样 1,创建一个View // //  IWAreaPickerVi

vue仿京东省市区三级联动选择组件

工作中需要一个盒京东购物车地址选择相似的一个省市区三级联动选择组件,google查了下都是下拉框形式的,于是自己写了一个,希望对使用vue开发项目的朋友有帮助,显示效果如下:使用vue2.0开发 html代码如下 <!--居住地址三级联动选项--> <section class="showChose" v-show="showChose"> <section class="address"> <secti

用vue实现省市县三级联动

我真的没想到这个会困扰到我.最开始以为,不就是直接找个简单的插件就实现了吗,jquery插件找了几个,都没有达到目的. 需求是这样的: 点击input框,弹出一个popup,然后可以滚动选择省,市,县.他们三者是联动的,同时也可以只选择市,或者市县,或者省市县.就是这个需求,感觉有点为难到我了.也可能是昨天感冒了,一天头都晕,又开各种会各种培训..哈哈哈,不扯了... 数据哪里来?去下载一个"省份.城市.区县"三级联动的数据. 考虑到滚动选择这个需求,我们用饿了么推出的minit-ui

[vue遇错记录] vue.js:569 [Vue warn]: Cannot find element: #app

写了一个很简单的界面,console提示:vue.js:569 [Vue warn]: Cannot find element: #vue-app.找了半天才发现原因: <script src="../vue.js"></script> <div id="app"> {{ message }} </div> <script src="app.js"></script> <

Vue系列:Vue Router 路由梳理

Vue Router 是 Vue.js 官方的路由管理器.它和 Vue.js 的核心深度集成,让构建单页面应用变得易如反掌.包含的功能有: 嵌套的路由/视图表 模块化的.基于组件的路由配置 路由参数.查询.通配符 基于 Vue.js 过渡系统的视图过渡效果 细粒度的导航控制 带有自动激活的 CSS class 的链接 HTML5 历史模式或 hash 模式,在 IE9 中自动降级 自定义的滚动条行为 1.动态路由 动态路由,可以将某种模式匹配到的所有路由,并全都映射到同个组件. (通俗点,比如根

vue 基于mint-ui 三级联动

一.基本配置 https://github.com/modood/Administrative-divisions-of-China 三级联动数据地址 二.vue基本配置 1.cnpm install mint-ui --save-dev 2.引入 import MintUI from 'mint-ui' import 'mint-ui/lib/style.css'; Vue.use(MintUI); <template>    <div>      <mt-picker :

[Vue CLI 3] vue inspect 的源码设计实现

首先,请记住: 它在新版本的脚手架项目里面非常重要 它有什么用呢? inspect internal webpack config 能快速地在控制台看到对应生成的 webpack 配置对象. 首先它是 vue 的一个扩展命令,在文件 @vue/cli/bin/vue.js 中定义了 command 还是依赖了工具包 commander const program = require('commander') 代码配置如下: program .command('inspect [paths...]