2016-10-03 98 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