vue实现带复选框的树形菜单

本文实例为大家分享了vue实现带复选框的树形菜单展示的具体代码,供大家参考,具体内容如下

代码:

<template>
  <div id="checkTree">
    <div class="tree-box">
      <div class="zTreeDemoBackground left">
        <ul id="treeDemo" class="ztree"></ul>
      </div>
    </div>
  </div>
</template>

<script>
  export default {
   name: 'checkTree',
   components:{

   },
   data:function(){
    return{
      setting:{
        check: {
          enable: true,
          nocheckInherit: false
        },
        data: {
          simpleData: {
            enable: true
          }
        }
      },
      zNodes:[
      { id:1,pid:0,name:"大良造菜单",open:true,nocheck:false,
        children: [
          { id:11,pid:1,name:"当前项目"},
          { id:12,pid:1,name:"工程管理",open:true,
            children: [
              { id:121,pid:12,name:"我的工程"},
              { id:122,pid:12,name:"施工调度"},
              { id:1211,pid:12,name:"材料竞价"}
            ]
          },
          { id:13,pid:1,name:"录入管理",open:true,
            children: [
              { id:131,pid:13,name:"用工录入"},
              { id:132,pid:13,name:"商家录入"},
              { id:1314,pid:13,name:"机构列表"}
            ]
          },
          { id:14,pid:1,name:"审核管理",open:true,
            children: [
              { id:141,pid:14,name:"用工审核"},
              { id:142,pid:14,name:"商家审核"},
              { id:145,pid:14,name:"机构审核"}
            ]
          },
          { id:15,pid:1,name:"公司管理",open:true,
            children: [
              { id:1517,pid:15,name:"我的工程案例"},
              { id:1518,pid:15,name:"联系人设置"},
              { id:1519,pid:15,name:"广告设置"}
            ]
          },
          { id:16,pid:1,name:"业务管理",open:true,
            children: [
              { id:164,pid:16,name:"合同范本"},
              { id:165,pid:16,name:"合同列表"},
              { id:166,pid:16,name:"需求调度"}
            ]
          },
          { id:17,pid:1,name:"订单管理",open:true,
            children: [
              { id:171,pid:17,name:"商品订单"},
              { id:172,pid:17,name:"用工订单"},
              { id:175,pid:17,name:"供应菜单"}
            ]
          },
          { id:18,pid:1,name:"我的功能",open:true,
            children: [
              { id:181,pid:18,name:"免费设计"},
              { id:182,pid:18,name:"装修报价"},
              { id:1817,pid:18,name:"项目用工"}
            ]
          },
          { id:19,pid:1,name:"分润管理",open:true,
            children: [
              { id:191,pid:19,name:"分润列表"}
            ]
          },
          { id:110,pid:1,name:"运营管理",open:true,
            children: [
              { id:1101,pid:110,name:"代理列表"},
              { id:1102,pid:110,name:"代售商品"}
            ]
          },
        ]
      }
      ]
    }
  },
   methods:{

   },
   mounted(){
    $.fn.zTree.init($("#treeDemo"), this.setting, this.zNodes);
   }
  }
</script>
<style>
  @import '../../../plugins/ztree/zTreeStyle.css';
</style>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • vue左侧菜单,树形图递归实现代码

    学习vue有一段时间了,最近使用vue做了一套后台管理系统,左侧菜单需求是这样的,可以多层,数据由后台传递.也因为自己对官方文档的不熟悉使得自己踩了不少坑,今天写出来和大家一起分享. 效果图如下所示: 先说说遇到的坑,由于是子父组件,当时传递使用的是子父组件的传递,但是这时候只能获取到第一层的数据,第二层往后获取不到数据,踩了一下午坑以后才知道,子组件使用了递归组件,这时候他已经不能往父组件传递了,子传父,只能逐层传递这时候已经隔层了,所以我使用了非子父组件传递,两个页面都引入bus.js,这里

  • Vue2组件tree实现无限级树形菜单

    一直打算偷懒使用个现成的树组件,但是在github上找了一大圈没有找到真正满足应用开发的树组件,所以没办法只能自己写了一个,开源出来希望可以帮助到需要的人,同时如果大家觉得好用,我可以顺带骗骗★(希望喜欢的朋友对我体力的肯定可以点下★ ),由于我也算刚接触vue,所以难免有所考虑不周的地方,希望大家在issue里面指正.组件重点是父子组件数据的共享和状态保持,我是利用了下vuex的思路,采用一个控制仓库完成. github 地址 vue-tree How to run demo npm inst

  • Vue.js组件tree实现无限级树形菜单

    分享一段用 <ul>和<li>标签实现tree的代码,可能写的不是很好,如果大家有更好的希望分享下. 代码看这里喽: html代码: <div class="tree"> <nav class='navbar'> <ul class='nav nav-stacked'> <template v-for='item in menus'> <li role='presentation' v-if='!item.c

  • Vue2递归组件实现树形菜单

    今天看了老长时间递归组件,官方给的教程太简便了,根本看不出到底怎么用.于是自己查网摸索了一下,这儿只把核心思想写出来. 效果如下图,点击后打开二级菜单,再点击后打开三级. //js //引子 //思想:当v-if='false'时,循环时进行的.所以一开始就设置为false. ggg:{ name:'gs', template:` <div> <p @click.stop='show=!show'>我是p标签</p> //这儿show必须要初始值为false,不然就是堆

  • Vue递归实现树形菜单方法实例

    什么是树形菜单还是要简单的啰嗦一下,比如: 上图是截图自elementui的实例,实现方式是用文档结构(类似像原生Dom文档结构的写法)的方式,好处就是很灵活,可以方便的自定义,作为一个通用视图组件库这是正确的做法. 在实际的企业应用中,菜单要比这复杂很多,层次也要多很多,如果我们采取手动编写文档结构的方式,会导致代码亢长,阅读和维护都很低效.毫无疑问所有Vuer都会想到用一个数据结构来驱动文档结构.vue-router的数据结构恰恰就是完美的嵌套层次结构(树结构),同时vue文档中也提到了递归

  • vue实现树形菜单效果

    本文实例为大家分享了vue实现树形菜单效果展示的具体代码,供大家参考,具体内容如下 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>vue</title> <meta name="viewport" content="width=device-width, initial-scale=1.0">

  • Vue.js 递归组件实现树形菜单(实例分享)

    最近看了 Vue.js 的递归组件,实现了一个最基本的树形菜单. 项目结构: main.js 作为入口,很简单: import Vue from 'vue' Vue.config.debug = true import main from './components/main.vue' new Vue({ el: '#app', render: h => h(main) }) 它引入了一个组件 main.vue: <template> <div class="tree-m

  • Vue组件tree实现树形菜单

    vue 编写的树形菜单,小巧实用,支持vue1.0,vue2.0 v1.0 功能: 1.支持多级树目录 2.支持高亮点击的节点 3.支持展开点击节点 4.支持点击收缩节点时收缩所有子目录 5.支持自定义回调函数,点击节点时回调,参数为节点信息 用法:<launch-tree :list='list' :options='options'></launch-tree> list = [ { name: '一级目录', // 目录名字 isOpen: true, // 是否初始展开目录

  • vue.js与element-ui实现菜单树形结构的解决方法

    由于业务需要,要求实现树形菜单,且菜单数据由后台返回,在网上找了几篇文章,看下来总算有了解决办法. 场景:根据业务要求,需要实现活动的树形菜单,菜单数据由后台返回,最后的效果图如下: 后台返回的数据格式是这个样子的: data=[{ pID:'1',//父ID name:'目录一', menuID:'m1',//本身ID isContent:false//判断是否是目录 }, { pID:'1', name:'目录二', menuID:'m2', isContent:false }, { pID

  • 用 Vue.js 递归组件实现可折叠的树形菜单(demo)

    在Vue.js中一个递归组件调用的是其本身,如: Vue.component('recursive-component', { template: `<!--Invoking myself!--> <recursive-component></recursive-component>` }); 递归组件常用于在blog上显示注释.嵌套的菜单,或者基本上是父和子相同的类型,尽管具体内容不同.例如: 现在给您演示一下如何有效地使用递归组件,我将通过建立一个可扩展/收缩的树形

  • Vue.js递归组件构建树形菜单

    在Vue.js中一个递归组件调用的是其本身,如: Vue.component('recursive-component', { template: `<!--Invoking myself!--> <recursive-component></recursive-component> }); 递归组件常用于在blog上显示注释.嵌套的菜单,或者基本上是父和子相同的类型,尽管具体内容不同.例如: 现在给您演示一下如何有效地使用递归组件,我将通过建立一个可扩展/收缩的树形菜

随机推荐