Angularjs使用ng-repeat中$even和$odd属性的注意事项


Posted in Javascript onDecember 31, 2016

前言

JavaScript中数组的索引是从0开始的,因此我们再取奇偶的时候需要用!$even和!$odd来将$even和$odd的布尔值反转

下面给出一个实例:

使用$odd和$even来制作一个红蓝相间的列表

<!DOCTYPE html>
<html lang="zh-CN" ng-app="app">
<head>
 <meta charset="utf-8">
 <title>ng-repeat的用法</title>
 <link rel="stylesheet" href="../bootstrap.min.css">
 <style>
 .odd {
 background-color: blue;
 }
 .even {
 background-color: red;
 }
 </style>
</head>
<body>
 <h4>ng-repeat用来遍历一个集合或为集合中的每个元素生成一个模板实例。集合中的每个元素 都会被赋予自己的模板和作用域。同时每个模板实例的作用域中都会暴露一些特殊的属性。 </h4>
 <ul>
 <li>$index:遍历的进度(0...length-1)。 </li>
 <li>$first:当元素是遍历的第一个时值为true。</li>
 <li>$middle:当元素处于第一个和后元素之间时值为true。 </li>
 <li>$last:当元素是遍历的后一个时值为true。 </li>
 <li>$even:当$index值是偶数时值为true。 </li>
 <li>$odd:当$index值是奇数时值为true。 </li>
 </ul>
 下面的例子展示了如何用$odd和$even来制作一个红蓝相间的列表。记住,JavaScript中数组 的索引从0开始,因此我们用!$even和!$odd来将$even和$odd的布尔值反转。 
 <ul ng-controller="PeopleController">
 <li ng-repeat="person in people" style="color: #fff;" ng-class="{even: !$even, odd: !$odd}">
 {{ person.name }} 住在 {{ person.city }} {{$index}}
 </li>
 </ul>
 <script src="../angular.min.js"></script>
 <script>
 angular.module('app', [])
 .controller('PeopleController', ['$scope', function($scope) {
 $scope.people = [
 {name: '张三', city: '广东'},
 {name: '李四', city: '江西'},
 {name: '王五', city: '东北'}
 ]
 }])
 </script>
</body>
</html>

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。

Javascript 相关文章推荐
jquery 添加节点的几种方法介绍
Sep 04 Javascript
js中call与apply的用法小结
Dec 28 Javascript
深入理解javascript变量声明
Nov 20 Javascript
JavaScript更改字符串的大小写
May 07 Javascript
1秒50万字!js实现关键词匹配
Aug 01 Javascript
jQuery Ajax 异步加载显示等待效果代码分享
Aug 01 Javascript
Angular2入门教程之模块和组件详解
May 28 Javascript
利用vue开发一个所谓的数独方法实例
Dec 21 Javascript
微信网页授权并获取用户信息的方法
Jul 30 Javascript
纯javascript前端实现base64图片下载(兼容IE10+)
Sep 14 Javascript
发布一款npm包帮助理解npm的使用
Jan 03 Javascript
使用apifm-wxapi快速开发小程序过程详解
Aug 05 Javascript
Angularjs通过指令监听ng-repeat渲染完成后执行脚本的方法
Dec 31 #Javascript
angularjs中ng-attr的用法详解
Dec 31 #Javascript
Angularjs中ng-repeat-start与ng-repeat-end的用法实例介绍
Dec 31 #Javascript
Angular JS数据的双向绑定详解及实例
Dec 31 #Javascript
Javascript 实现全屏滚动实例代码
Dec 31 #Javascript
Node.js中如何合并两个复杂对象详解
Dec 31 #Javascript
javascript 闭包详解及简单实例应用
Dec 31 #Javascript
You might like
盘点被央视点名过的日本动画电影 一部比一部强
2020/03/08 日漫
最令PHP初学者们头痛的十四个问题
2007/01/15 PHP
PHP上传文件时文件过大$_FILES为空的解决方法
2013/11/26 PHP
[原创]PHP简单开启curl的方法(测试可行)
2016/01/11 PHP
简单谈谈PHP中的trait
2017/02/25 PHP
Laravel 关联模型-关联新增和关联更新的方法
2019/10/10 PHP
jQuery ajax cache缓存问题
2010/07/01 Javascript
Javascript实现获取窗口的大小和位置代码分享
2014/12/04 Javascript
jquery带动画效果幻灯片特效代码
2015/08/27 Javascript
javaScript数组迭代方法详解
2016/04/14 Javascript
jQuery为动态生成的select元素添加事件的方法
2016/08/29 Javascript
mac上node.js环境的安装测试
2017/07/03 Javascript
详解用vue编写弹出框组件
2017/07/04 Javascript
使用Vue.js开发微信小程序开源框架mpvue解析
2018/03/20 Javascript
nodejs中方法和模块用法示例
2018/12/24 NodeJs
javascript中如何判断类型汇总
2019/05/14 Javascript
微信小程序实现发微博功能的示例代码
2020/06/24 Javascript
JS可断点续传文件上传实现代码解析
2020/07/30 Javascript
用smtplib和email封装python发送邮件模块类分享
2014/02/17 Python
Python字符串、元组、列表、字典互相转换的方法
2016/01/23 Python
使用Python3 编写简单信用卡管理程序
2016/12/21 Python
用Python实现随机森林算法的示例
2017/08/24 Python
使用Selenium破解新浪微博的四宫格验证码
2018/10/19 Python
pygame游戏之旅 如何制作游戏障碍
2018/11/20 Python
python实现词法分析器
2019/01/31 Python
PYQT5开启多个线程和窗口,多线程与多窗口的交互实例
2019/12/13 Python
简单了解Django ORM常用字段类型及参数配置
2020/01/07 Python
Python venv虚拟环境配置过程解析
2020/07/08 Python
彪马加拿大官网:PUMA加拿大
2018/10/04 全球购物
Java中实现多态的机制是什么?
2014/12/07 面试题
申报职称专业技术个人的自我评价
2013/12/12 职场文书
投资建议书模板
2014/05/12 职场文书
公司租房协议书范本
2014/10/08 职场文书
销售合作意向书范本
2015/05/08 职场文书
2019年励志签名:致拼搏路上的自己
2019/10/11 职场文书
nginx 配置指令之location使用详解
2022/05/25 Servers