angularjs(ng-repeat和filter)生成多级菜单
来源:互联网 发布:redis做数据库 编辑:程序博客网 时间:2024/06/15 13:05
需求如下:
后端通过数据库生成无序的数组,传到前端,数据结构如下(pid即parentId,如本级的pid为4,则它上一级的menu_id为4):
[ {pid:1,menu_id:7}, {pid:4,menu_id:9}, {pid:3,menu_id:8}, {pid:0,menu_id:4}, {pid:0,menu_id:3}, {pid:4,menu_id:10}, {pid:0,menu_id:1}, {pid:1,menu_id:11}, {pid:8,menu_id:15} ];
前端实现如下
<head><meta charset="utf-8"><script src="http://cdn.static.runoob.com/libs/angular.js/1.4.6/angular.min.js"></script></head><body><div ng-app="myApp" ng-controller="myCtrl"> <div ng-repeat="x in items | filter:{'pid':0} | orderBy: 'menu_id' "> 一级菜单:{{x}} <div ng-repeat="y in items | orderBy : ['pid','menu_id']| filter:{'pid' : x.menu_id}"> 二级菜单:{{y}} <div ng-repeat="z in items | orderBy : ['pid','menu_id']| filter:{'pid' : y.menu_id}"> 三级菜单:{{z}}</div> </div> </div></div><script>var app = angular.module('myApp',[]);app.controller('myCtrl', function($scope) { $scope.items = [ {pid:1,menu_id:7}, {pid:4,menu_id:9}, {pid:3,menu_id:8}, {pid:0,menu_id:4}, {pid:0,menu_id:3}, {pid:4,menu_id:10}, {pid:0,menu_id:1}, {pid:1,menu_id:11}, {pid:8,menu_id:15} ];</script></body>
结果如下:
阅读全文
0 0
- angularjs(ng-repeat和filter)生成多级菜单
- angularjs的作用域(ng-repeat 和 ng-controller)
- AngularJS中的ng-repeat、ng-repeat-start和ng-repeat-end的用法区别详解
- AngularJs Filter自定义过滤器控制ng-repeat去除重复
- angularjs ng-repeat
- angularjs ng-repeat
- Angularjs中的ng-repeat
- angularJS ng-repeat
- angularjs ng-repeat
- angularjs-ng-repeat
- angularjs ng-repeat
- ng-repeat filter
- AngularJS学习笔记ng-repeat
- AngularJs ng-repeat性能问题
- AngularJS之ng-repeat指令
- AngularJS ng-repeat的使用
- 关于AngularJs的ng-repeat
- angularJs ng-repeat 去重复
- Unity开发微信登陆—利用ShareSDK微信登录
- git相关
- Sublime Text3注册码(测试可用仅供个人学习)
- [Matlab]Invalid mex-file 找不到指定的模块
- python 学习心得
- angularjs(ng-repeat和filter)生成多级菜单
- 软件更新,是不是太频繁了?
- JXL基础应用
- 学习笔记DL003:神经网络第二、三次浪潮,数据量、模型规模,精度、复杂度,对现实世界冲击
- MongoDB环境搭建
- POI相关
- Mysql 常用函数
- 第十章 登录与验证码处理
- 向linux服务器上传下载文件