3

。咖啡

@FooCtrl = ->
  $scope.products = Product.query()

.html

<div ng-repeat='product in products'>
  <div ng-init='images_{{product.id}} = product.images' >
    <div class='slideshow' ng-repeat='pic in images_{{product.id}}'>
       <img ng-src='{{pic.url}}' />
    </div>
</div>

我想这样做。但是ng-init='images_{{product.id}}'抛出了一些异常。对此有任何补救措施或替代解决方案吗?

4

1 回答 1

17

您正在做的方式可能无法正常工作,因为 ng-init 采用标准 Javascript 表达式,因此{{}}无法正常工作。

由于 javascript 对象只是一个键值集合。您需要使用[]符号而不是.符号来访问动态属性。

所以这

<div ng-init='images_{{product.id}} = product.images >

变成

<div ng-init='this["images_"+this.product.id] = product.images'>

看看我创建的这个小提琴

于 2013-08-03T10:28:11.900 回答