在与一个ViewModel
and a List
存储在那里,我通常遵循这种方法:
var characteristics by mutableStateOf(listOf<Characteristic>())
然后,我可以将数据分配给列表或修改它,并且 UI 将正确重构:
characteristics = issuesRepository.getCharacteristics()
characteristics = characteristics.plus(newCharacteristic)
然而,我最近偶然发现了几种包含关键字的方法mutableStateListOf()
,然后将 List 分成两个单独的变量似乎是一种常见的做法,如下所示:
private val _characteristic = mutableStateListOf<Characteristic>()
val characteristic: List<Characteristic> = _characteristic
这些方法有何不同,其中一种被认为是最佳实践还是一种更清洁的方法?
Using mutableStateOf
你正在创建一个可观察的对象。因此,只要将新实例分配给此状态,就会发生重组。
假设您希望在将新项目添加到列表后进行重组。在这种情况下,您需要创建此列表的副本,将 elemento 添加到此复制的列表中,然后将复制的列表分配给状态。
The mutableStateListOf
创建一个可观察列表。您在此列表中执行的所有操作(添加、删除、更新)都将导致重组。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)