【问题标题】:Access current item in ng-repeat访问 ng-repeat 中的当前项目
【发布时间】:2013-05-27 09:08:15
【问题描述】:

我有这样的事情:

<li ng-repeat="item in items">
    {{item.name}}
</li>

item 对象有一个名为index 的属性。如何将它分配给tabIndex,所以我的输出看起来像:

<li tabIndex="100">Mike</li>
<li tabIndex="101">Smith</li>

我试过了,但它无法访问当前项目:

<li ng-repeat="item in items" tabIndex="item.index">
    {{item.name}}
</li>

【问题讨论】:

    标签: javascript html angularjs angularjs-directive angularjs-ng-repeat


    【解决方案1】:

    在 ng-click 中使用 current 怎么样?它不支持函数参数:\

    我的意思是 &lt;tr ng-repeat="..." ng-click="goToPage({{item.url}})"&gt;&lt;/tr&gt;

    【讨论】:

      【解决方案2】:
      <li ng-repeat="item in items" tabIndex="{{item.index}}">
          {{item.name}}
      </li>
      

      注意:如果 tabIndex 恰好是您的应用程序中具有隔离范围的指令,并且您使用 @attr 获取值,则需要插值(大括号)。另一种方法是将它们排除在外,并在您的指令中定义变量,例如=attr

      【讨论】:

      • 我没有意识到我需要在属性中使用花括号。完美运行。谢谢!
      【解决方案3】:

      如果你指的是 ng-repeat 的索引,tabIndex={{$index}} 如果您有一个名为 index 的属性,请按照标准方式进行操作:tabindex={{item.index}}

      正如它在http://docs.angularjs.org/api/ng.directive:ngRepeat中出现的那样

      演示http://jsfiddle.net/shNfD/

      <li ng-repeat="item in items" myattr={{$index}}>
          {{item.name}} {{$index}}
      </li>
      

      【讨论】:

      • 我知道内置索引属性。我需要设置自己的自定义索引。双花括号是我错过的。
      【解决方案4】:

      将其更改为 {{item.index}}

      看到这个 plnkr http://plnkr.co/edit/z8uvzOSE5mjw6q2FQKfm

      【讨论】:

        猜你喜欢
        • 2015-12-10
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-01-26
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多