2016-10-03 95 views
3

当我将我的angular 2 projet从RC4更新到2.0.1后,我遇到了ngFor循环对象数组的问题(它在RC4上工作正常)ngFor对不能正确更新DOM元素的对象Array

排序对象列表没有在DOM上正确更新,它们似乎未排序。

步骤重现bug /问题:

  1. 这里是plnkr:plnkr
  2. 移动开始/通过中间停止界限。
  3. 然后将可拖动的栏向左/右移动。
  4. 您将看到显示的元素正在更新。
  5. 在某些时候,如果你移动到左边,你会看到元素是 unsorted/mixed。
  6. 我在控制台上添加了日志ngLoop的id索引。所以 当出现问题时

我试过几件事情,但没有什么工作,你可以看到它的无序:

  • 使用对象
  • 在副本上使用与数组中的键...

感谢你的帮助

+0

检查角2次版本更新后,我看到那里的问题来自: 在RC5添加 -​​ >“核心:确保ngFor只是插入/移动/必要时删除元素“ 我比较了我的项目RC4和2.0.1,并且所有元素仅在RC4上更新(如预期的那样)。 有没有办法绕过这个?并且在2.0.1版本中更改所有DOM元素后更新? – viceo

回答

0

为了得到所有 ngfor内部DOM元素/对象更新:

我不得不创建一个新组件,然后在ngfor内部实例化组件。

现在元素都正确地更新,因为他们在RC4 ...

+1

你能举一些例子代码吗?也许它与我的问题有关:http://stackoverflow.com/questions/41185017/angular2-doesnt-detetect-changes-in-array – SoS