`

AngularJS实战之ng-repeat的详细用法

阅读更多
一、基本语法
{{$index}}:获取元素的下标。
{{$first}}:判断当前元素是否是第一个元素,是则为true,否则:false;
{{$last}}:判断当前元素是否是最后一个元素,是则为true,否则:false;
{{$middle }}:判断当前元素是否是中间元素,,是则为true,否则:false;
{{ $odd}}:判断当前元素是否是奇数,,是则为true,否则:false;
{{ $even}}:判断当前元素是否是偶数,,是则为true,否则:false;

二、嵌套ng-repeat
获取父级的属性用{{$parent.$index}},当然一个也可以多个$parent方式获取父级的父级。
三、排序、过滤
  <!--升序  -->
  	<div ng-repeat="item in grandfather|orderBy: 'letter'" style="background-color: red;">	{{item.letter}}</div>
  <!--降序  -->
  	<div ng-repeat="item in grandfather|orderBy: '-letter'" style="background-color: green;">	{{item.letter}}</div>
  <!--多个排序  -->
  	<div ng-repeat="item in grandfathermore|orderBy: ['-letter','name']" style="background-color: #388cff;">	{{item.name}}</div>
  <!--多个排序+过滤 -->
  	<div ng-repeat="item in grandfathermore|orderBy: ['-letter','name']|filter:'o'" style="background-color: #333;">	{{item.name}}</div>	  	
  </body>
  <script type="text/javascript" src="../plugins/angular/angular.js"></script>
  <script type="text/javascript">
  	var lxApp=angular.module("lxApp",[]);
  	lxApp.controller("lxCtrl",function($scope){
  		$scope.grandfather=[{"letter":"a"},{"letter":"b"}];
  		$scope.grandfathermore=[{"letter":"a","name":"lx"},{"letter":"a","name":"kebo"}];
  	});
  </script>

四、错误解决


这个错误是angular数组中有两个级以上相同的数字,想要解决需要使用track by $index来规避这个错误,也可以使用当前元素中的内容来充当例如ng-repeat="item in list track by item.id "
五、坑
我们很多时候会使用angular的$index当作下标进行一系列操作,但是这里要注意了,当我们使用了filter过滤了数组会导致下标不准确,此时我们应该使用元素本身作为条件操作。
end:例子代码见附件
  • 大小: 19.1 KB
1
0
分享到:
评论

相关推荐

    angularjs-chapter1-示例.rar

    《AngularJS基础教程:Chapter1实战解析》 AngularJS,作为一个强大的前端JavaScript框架,由Google维护,被广泛用于构建交互式、数据驱动的Web应用程序。本教程将通过"angularjs-chapter1-示例.rar"中的实践案例,...

    angularjs-chapter4-示例.rar

    本篇将详细解析"angularjs-chapter4-示例.rar"中所涵盖的第四章核心概念及实战应用。 在AngularJS的第四章中,主要探讨了以下几个关键知识点: 1. **双向数据绑定**:AngularJS的核心特性之一,它实现了视图与模型...

    AngularJS-in-Action

    - 常见的内置指令有`ng-repeat`用于循环渲染数组中的数据项,`ng-if`用于条件渲染等。 3. **作用域与控制器** - 作用域(Scope)是AngularJS中管理数据和函数的容器,用于连接控制器与视图。 - 控制器...

    AngularJS实战 PDF

    **AngularJS实战PDF**是一本深入探讨AngularJS框架的实战指南,旨在帮助开发者掌握这个强大的JavaScript框架,并在实际项目中应用。AngularJS是由Google维护的一个开源项目,它为构建动态Web应用提供了丰富的功能和...

    angularJS理论与实战.ppt

    三、AngularJS实战 1. 基础模板:创建一个简单的AngularJS应用,包括初始化应用、创建控制器和数据绑定。 2. 表单处理:利用ng-model处理表单数据,ng-submit实现表单提交,配合表单验证提高用户体验。 3. HTTP交互...

    angularJs权威和精通angularjs

    通过阅读《精通AngularJS》和《AngularJS权威指南》这两本书,你将不仅了解AngularJS的基本用法,还能深入学习其实战技巧,提升自己的前端开发技能。同时,《基于MVC的JavaScript+Web富应用开发》可能还会提供关于...

    angularjs:AngularJS实战

    **AngularJS实战:深入理解与应用** AngularJS,作为一个由Google维护的JavaScript框架,自2010年发布以来,已经在Web开发领域取得了显著的地位。它以其强大的数据绑定和依赖注入特性,为构建动态单页应用程序(SPA...

    AngularJS实用开发技巧(推荐)

    ### 三、AngularJS内置指令的实战应用 1. **ng-class**:动态地根据表达式的值添加或移除CSS类。可以接受字符串、对象或数组,灵活控制元素的样式。例如,用于点赞或关注功能,根据用户状态显示不同图标。 2. **ng-...

    疯狂前端开发讲义 jQuery AngularJS Bootstrap前端开发实战

    接下来,我们将详细探讨这三个技术的核心概念、应用场景以及如何结合使用。 一、jQuery jQuery是由John Resig在2006年创建的一个JavaScript库,它简化了JavaScript的DOM操作、事件处理、动画设计和Ajax交互。...

    AngularJS权威指南_angularjs_

    以上内容只是AngularJS权威指南中的冰山一角,完整的指南将详细讲解每一个概念,并通过丰富的示例和实战指导,帮助读者深入理解并熟练运用AngularJS进行Web开发。阅读《AngularJS权威指南》PDF文档,将为你的...

    angularjsDEMO

    《AngularJS实战DEMO解析》 AngularJS,作为一款由Google维护的JavaScript框架,自2009年诞生以来,已经在Web开发领域产生了深远影响。它以其强大的数据绑定和依赖注入特性,为开发者构建动态、单页应用(SPA)提供...

    AngularJS 学习笔记

    页面上展示了不同的**Directive**使用方法,包括`ng-bind`、`ng:bind`、`ng_bind`、`data-ng-bind`以及`x-ng-bind`。 #### 九、总结 通过本文的介绍,我们可以看到**Directive**是AngularJS中一个极其重要的特性,...

    angularJS权威学习指南手册

    2. **指令**:AngularJS扩展了HTML,通过自定义属性、元素或类来增加新的功能,如ng-repeat用于迭代数组,ng-if用于条件渲染。 3. **表达式**:在AngularJS中,可以在HTML中直接写JavaScript表达式,用于动态地展示...

    example for angular js

    本文将通过一个实际的项目示例——TodoList 应用,来详细介绍 Angular JS 的核心概念与特性,包括布局设计、控制器使用、数据绑定等技术细节。 #### 目标 本教程的目标是教会初学者如何使用 Angular JS 构建一个...

    angularjs分页实例

    1. **数据绑定**:将从服务器获取到的分页数据绑定到视图,通常是一个`ng-repeat`循环,用于展示每页的记录。 2. **动态加载**:当用户切换页码或使用其他分页控件时,更新`currentPage`值并调用获取数据的方法,...

    小猫杯 源代码 Angularjs

    "小猫杯 源代码 Angularjs"这个项目,显然旨在帮助初学者通过实践了解并掌握AngularJS的基本概念和用法。 AngularJS的核心理念是数据绑定和依赖注入,这两点构成了其强大的功能基础。数据绑定使得视图和模型之间的...

    AngularJS中filter的使用实例详解

    使用方法是在数据绑定时,通过"|"符号调用currency过滤器,并可以传递一个可选的货币符号参数。 实例代码如下: ```html &lt;div&gt;{{money|currency:"$"}} &lt;div&gt;{{money|currency:"RMB"}} ``` 这段代码将会把`money`...

    angular 学习,增删改查

    在AngularJS中,数据绑定是其核心特性之一,允许开发者将视图与模型直接关联,使得UI的更新与数据模型的变化同步。在增删改查场景中,我们通常会创建一个控制器(Controller)来管理业务逻辑,它与视图(View)通过...

    angularjs_demoapp1

    《AngularJS实战应用详解——基于angularjs_demoapp1的探索》 AngularJS,作为Google推出的一款前端MVC框架,以其强大的数据绑定和依赖注入特性在Web开发领域占据了一席之地。本文将通过分析名为"angularjs_demoapp...

Global site tag (gtag.js) - Google Analytics