微信小程序实现简单的树形选择控件------treeSelect

前段时间公司突然要写小程序,项目中有一个树形控件。我找了很久的插件和框架。没有发现小程序能用的。只能硬着头皮自己写。

老规矩,先贴图
在这里插入图片描述

  • 为什么要特意强调此图标呢?
  • 因为该图标为中间状态。此处是我后期要优化的地方,在下面的代码中还未实现。我有了初步的思考。
    我的代码中设定(以网络部为例)
  • 0 该部门成员全部未选中
  • 1 该部门成员全部选中
  • -1 该部门成员至少选中一人切少于部门总人员数

好了,下面我们来实现树形结构的全选和零选中状态

  • 首先是树形组件的代码
    components文件夹下创建tree-select文件夹,选择新建component。命名为index

index.wxml文件

<view id="treeItem">
  <block wx:for="{
   {treeList}}" wx:key="deptId">
    <view  class="tree-item" style="margin-left: {
   {depth*40}}rpx" data-id="{
   {item.deptId}}" data-is-check="{
   {item.isCheck}}" catchtap="handleClick" >
      <!-- 全选 -->
      <view class="iconfont iconxuanzhong" wx:if="{
   {item.isCheck == 1}}" style="color: #007AFF" ></view>
      <!-- 未选中 -->
      <view class="iconfont iconweixuanzhong1" wx:if="{
   {item.isCheck == 0}}" style="color:#000" ></view>
    </view>
    <!-- children -->
    <view wx:if="{
   {item.children}}">
      <tree-select treeList="{
   {item.children}}" treeArray="{
   {treeArray}}" depth="{
   {depth+1}}" catchhandleClick="treeClick" id="treeItem"></tree-select>
    </view>
  </block>
</view>

树形组件主要用的就是递归。所以上面组件中我在组件中又调用组件自身。通过depth来判断层级关系,来实现数据的缩进。treeList为页面中传进来的人员数据,treeArrary为我清洗数据之后传过来的初始的人员选中状态的数组

index.json*

{
   
  "component": true,
  "usingComponenuts": {
   
    "tree-select": "/components/tree-select/index"
  }
}

此处要在usingComponenuts中引入组件自身

index.js

  /**
   * 组件的属性列表
   */
  properties: {
   
    treeList: {
   
      type: Array,
      value: []
    },
    depth: {
   
      type: Number,
      value: 0
    },
    treeArray
微信小程序树形菜单替代组件:路径视图path-view
01-27
path-view-component 微信小程序 树形菜单替代组件:路径视图 path-view 项目截图 路径视图动态效果图-路径模式:mode1: 路径视图动态效果图-路径模式:mode2: 更新说明 2018-08-13 修复value以及unnormalizedValue更新时视图无法同步更新的bug。~~更详细的说明留待后续补充。。~~说明已在下方补充 2018-08-21 新增了contentKey,设置 每级内容显示内容对应的键值,之前只能是 item.title,现在可以根据需要设置。 2018-09-20 新增位置保持功能 API 参数 说明 类型 可选值 默认值 value     要显示的树状数据 Array Y [] pathMode     路径模式,支持:'mode1'、'mode2'。'mode1'模式,点击路径跳转时视图显示对应标签下一级的内容,'mode
小程序公司部门选人组件 树状多选实现
12-29
小程序公司部门选人组件 树状多选实现
微信小程序原生写法实现树型选择组件,完整代码。
Jnsone的博客
08-18 1169
微信小程序原生写法实现树型选择器组件,VantUI的简单使用
原生微信小程序中案例--仿boss区域树选择列多选功能
最新发布
我愿化作繁星
04-25 673
区域三级列表, 有添加,编辑,删除功能。
微信小程序树形选择组件
qq_34907249的博客
10-12 3095
treeListIndex: {// 默认为0,当前循环的第几层,用于tree样式展示。* @t 功能类型 collapse:点击图标展开收起,title:点击标题事件。text:"2-三级-1"text:"二级-1",text:"二级-2",前言:微信小程序并没有提供这样的组件 ,vant也没有,就自己写了一个。// 在组件实例被从页面节点树移除时执行。text:'一级',2、父子间事件通信 (需要层层向上传递)
原生小程序-树形多选treeCheckbox
apppws的博客
07-28 608
【代码】原生小程序-树形多选treeCheckbox。
微信小程序自定义tree组件,拿走直接用
weixin_43889687的博客
07-13 1412
工作原因,微信小程序需要一个功能类似于elemenui中的tree组件,找了好多ui组件库没有能直接用的,最后自己写了一套,封装成组件,中心技术是组件本身递归,只需要在父级页面传“树列表数据”和“选中的节点id”就可以用了。以下是tree组件需要的icon图标,自己去矢量库下载就好。
微信小程序tree组件仿el-tree效果
weixin_45168167的博客
03-09 421
【代码】微信小程序实现tree组件仿el-tree效果。
微信小程序实现简单树形treeview
fishineye的专栏
05-07 3743
H5有很多树形图(树状图)的组件,echarts也有。比如像bootstrap的treeview,定制性很强。不过这些都无法方便地为小程序所用,除非整个页面用H5搭建再用webview框进去,有点粗暴。所以还是自己写一个简单树形图组件试试。最终效果如下: 新建一个微信小程序项目,在app.json的pages里添加这么一行, "pages":[ "pages/index/index", "pages/logs/logs", "pages/components/mytree
微信小程序-树形菜单替代方案
热门推荐
haishangfeie的博客
07-14 2万+
起因 最近项目(微信小程序项目)有一个需求,有一些多级结构的数据,需要一个树形的菜单来显示内容,类似如下: : 然而,在实现的时候却意外的遇到了困难。。 实现树形菜单遇到的困难 其实应该说是实现无限层级树形菜单遇到的困难。 微信小程序无法动态新增子节点,然而我们的数据并不确定有多少层级(这里顺带一提,如果层级确定且级数不多的话,实现树形菜单还是比较容易的,可以使用多级嵌套wx:fo...
微信小程序组件 - 部门机构人员岗位树组件
weixin_43879088的博客
04-18 368
subDepartments: 子部门信息,也是一个 departments 类型的数组(可选)。在父组件中需要使用该组件的地方,使用。在父组件中导入和注册该组件。部门/员工姓名(必须)。position: 岗位名称(可选)。employees: 包含员工信息的数组(可选)。这是一个嵌套的部门机构人员岗位树组件,基于Vue框架。它可以根据传入的数组数据生成对应的树状结构。​ 岗位A1。​ 小A1(员工)​ 小A2(员工)​ 子部门A1。​ 子部门A2。
小程序源码 系统工具 树形控件源码.rar
03-29
免责声明:资料部分来源于合法的互联网渠道收集和整理,部分自己学习积累成果,供大家学习参考与交流。收取的费用仅用于收集和整理资料耗费时间的酬劳。 本人尊重原创作者或出版方,资料版权归原作者或出版方所有,本人不对所涉及的版权问题或内容负法律责任。如有侵权,请举报或通知本人删除。
在vue中使用vant TreeSelect分类选择组件操作
01-22
中文文档:TreeSelect 分类选择 效果展示: //先在你需要的页面中引入,第一个是弹出层,第二个是选择的 import { Popup } from vant; import { TreeSelect } from vant; 代码部分: <van-tree-select :items=items :active-id.sync=items.activeId :main-active-index.sync=ite
小程序实现多列选择
01-19
本文实例为大家分享了小程序实现多列选择器的具体代码,供大家参考,具体内容如下 代码分两部分,先上wxml <view class=container> <form catchsubmit=formSubmit> <view class=form-card> <view class=weui-cell> <view class=weui-cell__hd> <view class=weui-label>物种<span>*</span></view> </view> <view class=w
微信小程序 下拉菜单的实现
08-30
主要介绍了微信小程序 下拉菜单的实现的相关资料,需要的朋友可以参考下
select tree 简单实用-下拉树
03-24
NULL 博文链接:https://heroxuan.iteye.com/blog/1033362
vue3-treeselect:vue 3的树选择组件(下一个)
04-13
vue3树选择 具有嵌套选项的多选组件支持 。感谢及其源代码和库,以此作为vue 2的基础。 从他的资料库中取得重大变化: 属性value => modelValue 事件input => updated:modelValue 现在将插槽与特征带有嵌套选项的...
很好用的uni-app节点树组件!
06-23
很好用的uni-app节点树组件!
基于ztree开发的下拉树控件ztree-select
05-10
基于最新版本ztree而开发的下拉树插件,还拥有搜索功能
vue-treeselect实现多选
11-30
要使用vue-treeselect实现多选,需要按照以下步骤进行操作: 1.在main.js中插入如下代码: ```javascript import Treeselect from '@riophae/vue-treeselect' import '@riophae/vue-treeselect/dist/vue-...

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
7
原创
19
点赞
57
收藏
20
粉丝
关注
私信
写文章

热门文章

  • 微信小程序实现简单的树形选择控件------treeSelect 9440
  • 后台管理权限管理(一) 动态生成路由 3535
  • 后台管理权限管理(二) 权限按钮控制的实现 2404
  • vue中使用vant实现上拉刷新下拉加载(一) 1807
  • 记录一下vue中使用html2canvas生成海报 1037

分类专栏

  • 小程序 2篇
  • 后台管理 2篇
  • vue 3篇

最新评论

  • 后台管理权限管理(二) 权限按钮控制的实现

    藏剑于袖: 应该可以由后端给你一个字段你根据这个字段显示不同的操作显示应该是可以的

  • 后台管理权限管理(二) 权限按钮控制的实现

    小白-努力: 但是这样的话只是对于单一页面的,要是这个角色能够查看多个页面,每个页面都有增删改查四个按钮,但是该角色不同的页面的操作权限不统一的话,咋办

  • 微信小程序实现简单的树形选择控件------treeSelect

    Tina不吃香菜: 楼主可以分享个完整demo不

  • 微信小程序实现简单的树形选择控件------treeSelect

    Tina不吃香菜: 有完整demo了不,求分享表情包

  • 微信小程序实现简单的树形选择控件------treeSelect

    止语_WJ: 这是之前公司的代码,我没有办法给到你

您愿意向朋友推荐“博客详情页”吗?

  • 强烈不推荐
  • 不推荐
  • 一般般
  • 推荐
  • 强烈推荐
提交

最新文章

  • 后台管理权限管理(二) 权限按钮控制的实现
  • 后台管理权限管理(一) 动态生成路由
  • 小程序请求封装,可以直接用
2020年7篇

目录

目录

评论 22
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值

深圳SEO优化公司盘锦网站开发报价潍坊百度网站优化排名报价布吉网站关键词优化公司新余关键词按天收费价格内江模板推广公司喀什英文网站建设公司三明网站优化推广哪家好泸州SEO按天计费公司贵港网站优化推荐永新seo价格绥化关键词按天扣费推荐江门外贸网站设计上饶网络营销价格成都网络营销江门网站优化排名推荐邢台外贸网站设计多少钱昌吉网站设计价格淮北网站关键词优化平顶山seo网站推广推荐临沧设计公司网站多少钱镇江网站设计模板价格通辽关键词排名包年推广鹰潭网站优化排名泸州网站优化排名哪家好衡水阿里店铺运营嘉兴阿里店铺运营价格昌吉关键词排名包年推广报价宿迁建设网站龙岩网站优化按天计费哪家好毕节网站优化按天扣费价格歼20紧急升空逼退外机英媒称团队夜以继日筹划王妃复出草木蔓发 春山在望成都发生巨响 当地回应60岁老人炒菠菜未焯水致肾病恶化男子涉嫌走私被判11年却一天牢没坐劳斯莱斯右转逼停直行车网传落水者说“没让你救”系谣言广东通报13岁男孩性侵女童不予立案贵州小伙回应在美国卖三蹦子火了淀粉肠小王子日销售额涨超10倍有个姐真把千机伞做出来了近3万元金手镯仅含足金十克呼北高速交通事故已致14人死亡杨洋拄拐现身医院国产伟哥去年销售近13亿男子给前妻转账 现任妻子起诉要回新基金只募集到26元还是员工自购男孩疑遭霸凌 家长讨说法被踢出群充个话费竟沦为间接洗钱工具新的一天从800个哈欠开始单亲妈妈陷入热恋 14岁儿子报警#春分立蛋大挑战#中国投资客涌入日本东京买房两大学生合买彩票中奖一人不认账新加坡主帅:唯一目标击败中国队月嫂回应掌掴婴儿是在赶虫子19岁小伙救下5人后溺亡 多方发声清明节放假3天调休1天张家界的山上“长”满了韩国人?开封王婆为何火了主播靠辱骂母亲走红被批捕封号代拍被何赛飞拿着魔杖追着打阿根廷将发行1万与2万面值的纸币库克现身上海为江西彩礼“减负”的“试婚人”因自嘲式简历走红的教授更新简介殡仪馆花卉高于市场价3倍还重复用网友称在豆瓣酱里吃出老鼠头315晚会后胖东来又人满为患了网友建议重庆地铁不准乘客携带菜筐特朗普谈“凯特王妃P图照”罗斯否认插足凯特王妃婚姻青海通报栏杆断裂小学生跌落住进ICU恒大被罚41.75亿到底怎么缴湖南一县政协主席疑涉刑案被控制茶百道就改标签日期致歉王树国3次鞠躬告别西交大师生张立群任西安交通大学校长杨倩无缘巴黎奥运

深圳SEO优化公司 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化