更新记录

1.0.0(2025-06-03) 下载此版本

首次发布


平台兼容性

uni-app(4.01)

Vue2 Vue3 Chrome Safari app-vue app-nvue Android iOS 鸿蒙
× × ×
微信小程序 支付宝小程序 抖音小程序 百度小程序 快手小程序 京东小程序 鸿蒙元服务 QQ小程序 飞书小程序 快应用-华为 快应用-联盟
- - - - - - - - -

其他

多语言 暗黑模式 宽屏模式
× ×

基础参数

属性名 类型 默认值 说明
range Array - 本地渲染数据
idKey String id 指定 Object 中 key 的值作为单条数据的唯一 ID
nameKey String name 指定 Object 中 key 的值作为选择器显示的内容
allKey String value 指定 Object 中其他需要返回的内容
title String - 选择器的名称,默认为空
titleColor String #757575 标题的颜色
confirmColor String #007aff 确定按钮及选择框的颜色
cancelColor String #757575 取消按钮的颜色
currentIcon String 默认图标 折叠时的图标
defaultIcon String 默认图标 打开之后的图标
lastIcon String 默认无 没有子集时的图标
multiple Boolean true 是否可以多选(true: 多选,false: 单选)
cascade Boolean false 在(多选 && 父级可选)模式下,开启级联选择(true: 级联,false: 不级联)
selectParent Boolean true 父级是否可选(true: 可选,false: 不可选)
maskClick Boolean true 点击遮罩层是否关闭

事件回调

事件名 类型 说明
@cancel Handler 点击取消或点击遮罩层关闭时的回调方法
@confirm Handler 点击确定按钮时的回调方法

返回值说明

treeConfirm(e) {
    console.log("你点击了确定");
    console.log(e);
    /**
     * e 结构示例:
     * [
     *   { id: "100", name: "测试100", value: "冗余值" },
     *   { id: "110", name: "测试110", value: "冗余值" },
     *   { id: "111", name: "测试111", value: "冗余值" }
     * ]
     * - e 为选中的数据数组。
     * - 对象中包含:
     *   - `id`(由 `idKey` 指定的字段值)
     *   - `name`(由 `nameKey` 指定的字段值)
     *   - `value`(由 `allKey` 指定的字段值)
     */
}

代码使用示例


<template>
    <view>
        <button @click="showTree" type="primary" style="width: 50%; margin-top: 20px;">
            打开树形选择器
        </button>
        <peng-tree
            ref="pengTree"
            :range="range"
            idKey="id"
            nameKey="name"
            allKey="value"
            :multiple="false"
            :cascade="false"
            :selectParent="false"
            confirmColor="#007aff"
            cancelColor="#757575"
            title="标题"
            titleColor="#757575"
            @cancel="treeCancel"
            @confirm="treeConfirm"
        >
        </peng-tree>
    </view>
</template>

<script>
export default {
    data() {
        return {
            range: [
                {
                    id: "100",
                    name: "测试100",
                    value: "冗余值",
                    children: [
                        {
                            id: "110",
                            name: "测试110",
                            value: "冗余值",
                            children: [
                                {
                                    id: "111",
                                    name: "测试111",
                                    value: "冗余值",
                                }
                            ]
                        }
                    ]
                },
                {
                    id: "200",
                    name: "测试200",
                    value: "冗余值",
                    children: [
                        {
                            id: "220",
                            name: "测试220",
                            value: "冗余值",
                            children: [
                                {
                                    id: "222",
                                    name: "测试222",
                                    value: "冗余值",
                                }
                            ]
                        }
                    ]
                },
                {
                    id: "300",
                    name: "测试300",
                    value: "冗余值"
                }
            ]
        };
    },
    methods: {
        showTree() {
            // 打开选择器
            this.$refs.pengTree._show();
            // 关闭选择器
            // this.$refs.pengTree._hide();
        },
        treeCancel(e) {
            console.log("你点击了取消");
            console.log(e);
        },
        treeConfirm(e) {
            console.log("你点击了确定");
            console.log(e);
        },
    }
};
</script>

隐私、权限声明

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

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

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

许可协议

MIT协议

暂无用户评论。

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