ng-repeat指令要点


  1,基本格式,这里不作过多说明,需要的话查看文档

<div  ng-repeat="item in someCollection [| someFilter:arg1:arg2 ...]">
  <span>{{$index}}</span><span>{{item.someProperty}}</span><span>{{item.someFunction()}}</span>
</div>

  其中someXXX代表需要相应替换内容。$index是ng-repeat 内置变量,这是唯一一个数值型的,其他还有5个bool类型的:$first,$middle,$last,$even,$odd

  2,遍历map(字典)

$scope数据的定义:

$scope.item = {
content1: 'content1',
key: 'content1'
   date:'2005-12-01 12:32'
}

HTML代码定义:

<div ng-repeat='(id,value) in item'>
<span>{{id}}</span>&nbsp;<span>{{value}}</span>
</div>

输出结果:

    content1 'content1',
key 'content1'
  date '2005-12-01 12:32'

  3,遍历数组

$scope中数据定义:

$scope.itemList=[{id:201,name:'abc',amount:100},{id:100,name:'zdb',amount:100},
{id:10,name:'xxx',amount:200},{id:80,name:'231',amount:1020},
{id:50,name:'ppp',amount:20},{id:1,name:'hhh',amount:1100}];

HTML代码:

<div class="row" ng-repeat="item in itemList">
  <span>{{item.id}}-{{item.name}}-{{item.amount}}</span>
</div>

  4,ng-repeat-start和ng-repeat-end

angular会重复 包括start和end两个指令所在元素在内的所有html代码块

$scope中数据定义:

$scope.itemList=[{id:201,name:'abc',amount:100,details:[{id:0,model:'#2',amount:34},
                                {id:0,model:'#2',amount:66}]},
{id:100,name:'zdb',amount:100,details:[{id:0,model:'#200',amount:34},
                       {id:1,model:'#203',amount:66}]},
{id:10,name:'xxx',amount:200,details:[{id:0,model:'#211',amount:34},
                        {id:1,model:'#132',amount:166}]},
{id:80,name:'231',amount:1020,details:[{id:0,model:'#112',amount:360},
                        {id:1,model:'#234',amount:660}]},
{id:50,name:'ppp',amount:20,details:[{id:0,model:'#223',amount:14},
                      {id:2,model:'#212',amount:6}]},
{id:1,name:'hhh',amount:1100,details:[{id:0,model:'#452',amount:340},
                      {id:1,model:'#225',amount:760}]}];

HTML代码:

<div class="row" ng-repeat-start="item in itemList">  
</div>
  <div ng-repeat="sub in item.details">
    <span>{{item.id}}-{{item.name}}-{{item.amount}}</span>
  </div>
<div ng-repeat-end>
  <div class='summary'><span>{{item.id}}-{{item.name}}-{{item.amount}}</span></div>
</div>

[AngularJS]ng-repeat指令要点的更多相关文章

  1. Part 6 AngularJS ng repeat directive

    ng-repeat is similar to foreach loop in C#. Let us understand this with an example. Here is what we ...

  2. Angularjs 学习笔记-2017-02-05-初识Angular及app、model、controller、repeat指令和fileter、orderBy

    ng-app   定义作用域,从作用域处开始执行ng命令指令 ng-model 数据绑定字符,用于双向数据绑定 ng-controller ng控制台,定义function name($scope)来 ...

  3. 使用Angularjs的ng-cloak指令避免页面乱码

    在使用Anguarjs进行web开发或者进行SPA(single page application)开发时,往往会遇到下面这样的问题. 刷新页面时,页面会出现一些乱码,这里的乱码具体是指`{{expr ...

  4. 走进AngularJs(五)自定义指令----(下)

    自定义指令学习有段时间了,学了些纸上谈兵的东西,还没有真正的写个指令出来呢...所以,随着学习的接近尾声,本篇除了介绍剩余的几个参数外,还将动手结合使用各参数,写个真正能用的指令出来玩玩. 我们在自定 ...

  5. angularJS之使用指令封装DOM操作

    angularJS之使用指令封装DOM操作 创建指令 指令也是一种服务,只是这种服务的定义有几个特殊要求: 必须使用模块的directive()方法注册服务 必须以对象工厂/factory()方法定义 ...

  6. Angularjs 动态添加指令并绑定事件

    先说使用场景,动态生成DOM元素并绑定事件,非常常见的一种场景,用jq实现效果: http://jsbin.com/gajizuyuju/edit?html,js,output var count=0 ...

  7. AngularJs -- 内置指令

    AngularJS提供了一系列内置指令.其中一些指令重载了原生的HTML元素,比如<form>和<a>标签, 当在HTML中使用标签时,并不一定能明确看出是否在使用指令. 其他 ...

  8. AngularJS中的指令全面解析(转载)

    说到AngularJS,我们首先想到的大概也就是双向数据绑定和指令系统了,这两者也是AngularJS中最为吸引人的地方.双向数据绑定呢,感觉没什么好说的,那么今天我们就来简单的讨论下AngularJ ...

  9. 走进AngularJs(四)自定义指令----(中)

    上一篇简单介绍了自定义一个指令的几个简单参数,restrict.template.templateUrl.replace.transclude,这几个理解起来相对容易很多,因为它们只涉及到了表现,而没 ...

随机推荐

  1. django signal

    @receiver(post_save, sender=User) def create_account(sender, instance=None, **kwargs): if instance i ...

  2. win8中的参数传递

    列表页面: xaml: Gridview中的数据源是实体的集合: <i:EventToCommand Command="{Binding GridViewItemClick_Comma ...

  3. [Linux基础环境/软件]Linux下安装mysql

    我是使用免安装的包mysql-5.5.28-linux2.6-x86_64.tar.gz(在http://dev.mysql.com/downloads/可以下载到最新的包)的.直接解压,然后配置,初 ...

  4. Xcode7.3 beta 新功能 https://developer.apple.com/go/?id=xcode-7.3-rn

    Xcode7.3 beta 新功能html, body {overflow-x: initial !important;}html { font-size: 14px; } body { margin ...

  5. Eclipse 下安装 SVN的方法

    http://welcome66.iteye.com/blog/1845176 eclipse里安装SVN插件,一般来说,有两种方式: 直接下载SVN插件,将其解压到eclipse的对应目录里 使用e ...

  6. Sencha Touch 2.3 自定义主题皮肤,颜色

    写博客园越来越懒了,只写重点部分,不明白的可以Q我. 1.当你通过Cmd生成项目之后,App\resources\sass就是我们的样式源文件 2.想自定义自己的样式分为两种方式 扩展:这个是基于st ...

  7. python django查询12306火车票

    逢年过节,想坐个高铁票,都得上12306去买票,但用过的都会发现,它会把临近站点的也筛出来了.但有时我们压根就不会考虑买到临近站点的. 另一方面,在购票高峰期,有可能你要的出发站到目的站都没有票了,这 ...

  8. .net修炼笔记

    1. 底层基础概念 CIL(Common Intermediate Language) 中间语言(C# VB 最终编译成CIL语言) BCL(Base Class Library) 基础类库 (Sys ...

  9. 【javascript】设为首页——setHome

    原生 js 编写,兼容 ie,火狐和谷歌. 函数如下: function setHome(obj,url){ try{ obj.style.behavior = 'url(#default#homep ...

  10. 详解Github的.gitignore忽略文件+.gitignore不生效解决方案+生产配置大奉送

    详解Github的.gitignore忽略文件+.gitignore不生效解决方案+生产配置大奉送 Git中有一个非常重要的一个文件-----.gitignore 今天给大家免费送一个.gitigno ...