2016-02-27 94 views
0

经过一些研究后,这是我可以得到的最接近的答案,但这不适用于我们有rowsWithSection的场景。 React-Native Updating List View DataSource反应本机ListView数据源不与cloneWithRowsAndSections更新

我面对的问题是这样的;用户首先进入联系人列表,然后深入查看特定的联系人详细信息,然后他们可以对其进行修改;假定他们修改了该人的姓名;现在当他们回到列表视图时,应该刷新和更新listView;但是因为我的listView有章节,所以前面的例子不是直截了当的,我无法解决所提供的解决方案。 picture of Contacts List and Detail

我的数据集的我传递给我的ListView的结构是这样的:

 {'a':[{},{}], b:[{}]} 

,如果任何一个做这样的事情pleaseeee帮助。

谢谢!

回答

0

我解决这个问题的方式不是编辑;我从数据集中删除它并首先更新数据集,然后添加更新的数据集并再次更新数据集。

0

如果你编辑联系人,它应该会导致一个新的行......你存储的值应该是不可变的。如果您为ListView创建一个新的联系人行,它应该更新。

这也取决于你的rowHasChanged声明。我使用文档中提供的默认方法:

rowHasChanged: (r1, r2) => r1 !== r2 

!==正在检查r1和r2是否是相同的引用。因此,通过拥有一个不可变的存储值并更新它实际上会创建一个新对象,则r1和r2将不相等,因此您的ListView将会更新。