angular.widget.@ng:repeat

Work In Progress This page is currently being revised. It might be incomplete or contain inaccuracies.

Description

ng:repeat instantiates a template once per item from a collection. The collection is enumerated with ng:repeat-index attribute starting from 0. Each template instance gets its own scope where the given loop variable is set to the current collection item and $index is set to the item index or key.

There are special properties exposed on the local scope of each template instance:

NOTE: ng:repeat looks like a directive, but is actually an attribute widget.

Usage

In HTML Template Binding

<ANY @ng:repeat="repeat_expression">
  ...
</ANY>
  

Parameters

Example

This example initializes the scope to a list of names and than uses ng:repeat to display every person.

<div ng:init="friends = [{name:'John', age:25}, {name:'Mary', age:28}]"> I have {{friends.length}} friends. They are: <ul> <li ng:repeat="friend in friends"> [{{$index + 1}}] {{friend.name}} who is {{friend.age}} years old. </li> </ul> </div> it('should check ng:repeat', function(){ var r = using('.doc-example-live').repeater('ul li'); expect(r.count()).toBe(2); expect(r.row(0)).toEqual(["1","John","25"]); expect(r.row(1)).toEqual(["2","Mary","28"]); });