首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ngRepeat不能正确地$compile指令

ngRepeat不能正确地$compile指令
EN

Stack Overflow用户
提问于 2015-04-09 16:52:14
回答 1查看 102关注 0票数 1

我有一个数组的项目表达式,表达式,....我从数组中添加/删除了表达式,但ngRepeat没有正确地$compile该指令。

可能的原因是什么?

其中一个解决方案是,我有一个单独的表达式数组,我修改了它,每次更改时,我将“expression”重置为[]并设置新的数组,但在执行此操作时,UI元素会闪烁(首先摘要为[],然后超时(expression= new array))。

代码语言:javascript
复制
// Main
scope.list = [Expressions.new(), Expressions.new()];


//constructor Expressions

function Expressions(){};
Expression.prototype = {
  id: 'generated',
  list: [
    Expression.new(), Expression.new(),... 
  ]
};


//constructor Expression

function Expression(){};
Expression.prototype = {
  id: 'generated',
  val: ''
};
代码语言:javascript
复制
<!-- Main Usage -->
<div ng-repeat="expressions in list track by $index" dir-expressions x-attrs="expressions"></div>

<!-- Expressions directive -->
<div class="Expressions_Content">
  <ul ng-sortable="attrs.sortable">
    <li ng-repeat="expression in attrs.items track by $index">
      <div dir-expression x-attrs="expression"></div>
    </li>
  </ul>
</div> 


<!-- Expression directive -->
<div>{{Value}}</div>

这是一个复杂的情况,所以我将在示例中放入一些代码片段。

EN

回答 1

Stack Overflow用户

发布于 2015-04-10 02:17:30

正如Sunil D指出的那样,使用track by expression.id而不是$index。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29533939

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档