更新记录

2.0.1(2020-06-10) 下载此版本

将抽离的数据文件js 调整为父子组件传参

2.0.0(2020-03-04) 下载此版本

1、修复1.0.0版本中获取选中项数据,一级和三级均赋值为二级的bug 2、参考评论区,增加兼容二级、一级使用的情况

1.0.0(2020-03-02) 下载此版本

初始版本

查看更多

平台兼容性

关于

  • 选择省-学校-专业 (省-市-区)等,picker形式
  • 同事使用的插件市场的simple-address开发了这个功能,但是在数据处理上对原有tree结构数据不友好, 我作为接口开发的人员,按照其结构重新开发了接口,但总感觉数据接口不易于理解, 故基于simple-address,对数据格式进行了调整
  • 内部方法描述可参考 simple-address

数据结构(普通tree)

[
    {
        "id":"1",
        "name":"北京",
        "code":"11",
        "children":[
            {
                "id":"1230040276324601858",
                "name":"北京大学",
                "code":"10001",
                "children":[
                    {
                        "id":"1219144373145477122",
                        "name":"风景园林",
                        "code":"fengjingyuanlin"
                    }
                ]
            }
        ]
    }
]

使用代码片段

<template>
    <view class="content">
        <button type="primary" @tap="openLevel">打开地址</button>
        <text>{{pickerText}}</text>
        <!--
        mask-bg-color="rgba(0, 229, 238, 0.4)" // 自定义遮罩层背景颜色
        -->
        <level-linkage ref="levelLinkage" 
            :pickerValueDefault="pickerValueDefault" 
            :allData="treeData"
            @onConfirm="onConfirm" themeColor='#007AFF'></level-linkage>
    </view>
</template>

<script>
    import levelLinkage from "@/components/three-level-linkage/linkage.nvue"
    export default {
        data() {
            return {
                pickerValueDefault: [0, 0, 0],
                pickerText: '',
                treeData: [
                    {
                        "id":"1",
                        "name":"北京",
                        "code":"11",
                        "children":[
                            {
                                "id":"1230040276324601858",
                                "name":"北京大学",
                                "code":"10001",
                                "children":[
                                    {
                                        "id":"1219144373145477122",
                                        "name":"风景园林",
                                        "code":"fengjingyuanlin"
                                    }
                                ]
                            }
                        ]
                    }
                ]
            }
        ,
        components: {
            levelLinkage
        },
        methods: {
            openLevel() {
                this.$refs.levelLinkage.open();
            },
            onConfirm(e) {
                // e 确认后选中的数据
                this.pickerText = JSON.stringify(e)
            }

        }
    }
</script>

二级/一级兼容

pickerValueDefault 参数

  • 数组第一项 表示最左侧第一列表 元素index 必须大于等于0
  • 数组第二项 表示最左侧第二列表 元素index 当值小于 0 时,即变成一级选择器
  • 数组第三项 表示最左侧第三列表 元素index 当值小于 0 时,即变成二级选择器(如果第二项小于 0 则无论第三项是否大于0 都不显示)

隐私、权限声明

1. 本插件需要申请的系统权限列表:

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

许可协议

MIT协议

使用中有什么不明白的地方,就向插件作者提问吧~ 我要提问