1. 添加一个模板。
    <template id="menu-template">
  2. <li v-if="model.nodes!=undefined">
  3. <a href="#" class="menu-dropdown"> <i class="menu-icon ${child.icon!''}"></i> <span class="menu-text">
  4. {{model.title}} </span> <i class="menu-expand"></i>
  5. </a>
  6. <ul class="submenu">
  7. <item v-for="model in model.nodes" :model="model"></item>
  8. </ul>
  9. </li>
  10.  
  11. <li v-else>
  12. <a href="javascript:void(0)" data-url=""><i class="menu-icon "
  1. :class="model.icon"
  1. ></i> <!-- 图标 --> <span class="menu-text">{{model.title}}</span></a> </li> </template>
  1. 注册组件
    Vue.component('item', {
  2. template: '#menu-template',
  3. props: {
  4. model: Object
  5. }
  6. })
  1. $.post("http://127.0.0.1:88/admin/getFunctionJson.action", null, function(data) {
  2. var app = new Vue({
  3. el: "#app",
  4. data: data
  5. })
  6. })

使用:

<item  v-for="model in message" :model="model"></item>   message 为一个 数组

  1. <!-- 树形菜单... -->
  2. <template id="menu-template">
  3. <li v-if="model.nodeList!=undefined" class="treeview">
  4. <a href="#" class="menu-dropdown"> <i class="fa" :class="model.icon"></i>
  5. <span>
  6. {{model.title}}</span> <i class="fa fa-angle-left pull-right"></i></span>
  7. </a>
  8. <ul class="treeview-menu">
  9. <item v-for="model in model.nodeList" :key="model.id" :model="model"></item>
  10. </ul>
  11. </li>
  12.  
  13. <li v-else>
  14. <a href="javascript:void(0)" data-url=""><i class="fa" :class="model.icon"></i>
  15. <!-- 图标 -->
  16. <span>{{model.title}}</span></a>
  17. </li>
  18. </template>
  19. <script>
  20. Vue.component('item', {
  21. template: '#menu-template',
  22. props: {
  23. model: Object
  24. }
  25. })
  26. var message = [];
  27. $.post("{$ctx}/admin/auth/getFuncTree", null, function (data) {
  28. var obj = {};
  29. obj.message = data;
  30. var app = new Vue({
  31. el: "#app",
  32. data: obj
  33. })
  34. })

vue js 实现 树形菜单的更多相关文章

  1. Vue.js实现后台菜单切换

    因为刚初学Vue.js,暂时遇到以下问题,待之后解决 点击父节点,怎么隐藏显示子节点 点击父节点或子节点,切换li的class="active" iframe怎么自适应高度 思路 ...

  2. Vue.js学习 — 微信公众号菜单编辑器(一)

    学习里一段时间Vue.js,于是想尝试着做一个像微信平台里那样的菜单编辑器,在这里分享下 具体样式代码查看项目github 创建一个vue实例 <!DOCTYPE html> <ht ...

  3. jQuery树形菜单(1)jquery.treeview

    jQuery的树形插件资料URL:http://bassistance.de/jquery-plugins/jquery-plugin-treeview/从该网站Download得到jquery.tr ...

  4. Vue.js 递归组件实现树形菜单

    最近看了 Vue.js 的递归组件,实现了一个最基本的树形菜单. 项目结构: main.js 作为入口,很简单: import Vue from 'vue' Vue.config.debug = tr ...

  5. 用Vue.js递归组件构建一个可折叠的树形菜单

    在Vue.js中一个递归组件调用的是其本身,如: Vue.component('recursive-component', {   template: `<!--Invoking myself! ...

  6. Vue.js递归组件实现动态树形菜单

    使用Vue递归组件实现动态菜单 现在很多项目的菜单都是动态生成的,之前自己做项目也是遇到这种需求,翻看了官网案例,和网上大神的案例.只有两个感觉,官网的案例太简洁,没有什么注释,看起来不太好理解,大神 ...

  7. vue.js与element-ui实现菜单树形结构

    由于业务需要,要求实现树形菜单,且菜单数据由后台返回,在网上找了几篇文章,看下来总算有了解决办法.借鉴文章链接在最底部. 场景:根据业务要求,需要实现活动的树形菜单,菜单数据由后台返回,最后的效果图如 ...

  8. vue树形菜单

    vue树形菜单 由于项目原因,没有使用ui框架上的树形菜单,所以自己动手并参考大佬的代码写了一个树形菜单的组件,话不多说,直接上代码.html代码js代码直接调用api 把请求到的数据直接赋值给per ...

  9. JS树形菜单

    超全的JS树形菜单源代码共享(有实例图) 树形菜单是很常用的效果,常用在管理软件当中,但是一套树形菜单已经不能满足需求,所以如果能有一套比较全面的树形菜单JS特效代码,将会非常方便,下面懒人萱将超全的 ...

随机推荐

  1. HTML布局,插件的调用方法

  2. python http认证

    Requests 库有一个auth 模块专门用来处理HTTP 认证: import requestsfrom requests.auth import AuthBasefrom requests.au ...

  3. ZROI2018提高day5t3

    传送门 分析我们可以根据性质将这个序列构造成一个环:0,a[1~n],0,a[n~1] 这中间的0是为了起间隔作用的. 我们又知道b[i]=a[i-1]^a[i+1] c[i]=b[i-1]^b[i+ ...

  4. SpringMvc配置web.xml避免view被dispatcherServlet拦截

    在我们以SpringMvc作为开发框架,开发接口框架时,我们只用到Controller一层,因为数据是交到前端处理的,所以我们是不需要处理视图的.此时,在配置dispatcherServlet时,一般 ...

  5. HTML与CSS入门经典(第9版)试读 附随书源码 pdf扫描版​

    HTML与CSS入门经典(第9版)是经典畅销图书<HTML与CSS入门经典>的最新版本,与过去的版本相同,本书采用直观.循序渐进的方法,为读者讲解使用HTML5与CSS3设计.创建并维护世 ...

  6. msbuild 中文说明文档

    Microsoft (R) 生成引擎版本 14.0.25420.1 版权所有(C) Microsoft Corporation.保留所有权利. 语法: MSBuild.exe [选项] [项目文件] ...

  7. C# 顺序表---增删改查--逆至--删除最小值

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...

  8. ubuntu17.04安装flash

    因为用不了软件商店(别问我为什么) 所以手动安装 1 下载文件 在firefox下下载  *****.tar.gz 压缩包 ,并解压(一般目录在 /home 当前用户下的 下载目录下) adobe官网 ...

  9. Unity UGUI 原理篇(二):Canvas Scaler 縮放核心

    https://blog.csdn.net/gz_huangzl/article/details/52484611 Canvas Scaler Canvas Scaler是Unity UI系統中,控制 ...

  10. 利用Angular2的Observables实现交互控制

    在Angular1.x中,我们使用Promise来处理各种异步.但是在angular2中,使用的是Reactive Extensions (Rx)的Observable.对于Promise和Obser ...