2017-08-26 70 views
0

我正在實施Page,其中ListView顯示ObservableArray<Expense>中的項目。 ListView的loadMoreItems處理程序將10個新項添加到ObservableArray中。問題是,當我向下滾動時,某些行上的amount屬性Expense未顯示。 費用本身具有屬性集(從onTap()可見)。ListView未正確刷新

enter image description here

有時兩個連續的費用 「量」 不顯示,有時是每10項開支。我也將它部署在實際的電話上 - 同樣的行爲。
I played with it並注意到如果我將打印amount的標籤粘貼到最內層的StackLayout(其中兩個標籤是其中的一個),它就會正常工作。它弄亂了佈局,但它不是一個可行的解決方案。

任何幫助,將不勝感激:)
謝謝!

+0

我在GitHub上提交了一個[issue](https://github.com/NativeScript/NativeScript/issues/4931)。我的問題被確認爲一個錯誤。 –

回答

0

由於@tsonevn建議here,在list.ts變化loadMoreItems()到:

export function loadMoreItems(ev: EventData): void { 
    // https://github.com/NativeScript/NativeScript/issues/4931 
    console.log("loadMoreItems"); 
    const fireEventAfter = 100; //ms 
    setTimeout(() => { 
     listModel.loadMoreItems(ev); 
    }, fireEventAfter); 
} 

此外,刪除node_modules/, hooks/ & platforms/

最初有人建議將setTimeout的延遲設置爲0ms(即const fireEventAfter = 0),這對我的情況沒有什麼影響。