ObservableArray 推送上的 Nativescript 更新 UI
Nativescript update UI on ObservableArray push
游乐场link:https://play.nativescript.org/?template=play-tsc&id=VfEaFs&v=6
我的视图模型中有一个 ObservableArray,并且希望始终显示最后一个元素。
加载页面时,我将一个新项目推送到 ObservableArray,但 UI 没有更新。它总是显示 3,我期待 42。
这样使用转换器不行吗?实现此目标的最佳方法是什么?
您的表达式显示为 someNumbers, someNumbers | latest()
- 表示仅当 someNumbers
属性更改时才更新视图。但是您不更改此处的属性,而是操作数组内的数据,因此根本不会进行更改检测。
您可以改为 someNumbers.length, someNumbers | latest()
,每当您压入/弹出数组时都会更新长度,而正确的值将在 UI 上更新。
游乐场link:https://play.nativescript.org/?template=play-tsc&id=VfEaFs&v=6
我的视图模型中有一个 ObservableArray,并且希望始终显示最后一个元素。
加载页面时,我将一个新项目推送到 ObservableArray,但 UI 没有更新。它总是显示 3,我期待 42。
这样使用转换器不行吗?实现此目标的最佳方法是什么?
您的表达式显示为 someNumbers, someNumbers | latest()
- 表示仅当 someNumbers
属性更改时才更新视图。但是您不更改此处的属性,而是操作数组内的数据,因此根本不会进行更改检测。
您可以改为 someNumbers.length, someNumbers | latest()
,每当您压入/弹出数组时都会更新长度,而正确的值将在 UI 上更新。