Confused by AngularJS ng-repeat syntax

2.9k Views Asked by At

What is the meaning of the singular/plural syntax in, say, ng-repeat="product in store.products"?

3

There are 3 best solutions below

0
On BEST ANSWER

Singular/plural is used just for common sense and code readability - it doesn't have to be singular/plural. You can do

ng-repeat="whatever in store.products"` 

and then have the whatever object available inside (like: <img ng-src="{{whatever.images[0]}}" />).

In your case, store.products can't be changed since it refers to an actual object, while product is a completely custom name to be used in the repeat loop.

Fairly common in programming. Like the other answer said, it's similar to the for..in syntax.

0
On

This is essentially the same syntax as a Javascript for...in loop. It means for someTempVar in someArrayOrObject.

0
On

The directive ng-repeat="product in products" creates a new variable product that you can reference inside your template. There is no singular/plural interpolation going on.