StorIOSQLite有一个有趣的方法observeChangesInTable()。当我看到它时,我认为它会观察给定表中的更改并返回更新项目列表。
但它只返回更新的表名。为什么我需要更新的表名?我可以订阅孔表以获得有关更新的通知
storIoSqLite.get()
.listOfObjects(Item.class)
.withQuery(
Query.builder()
.table(ItemTable.NAME)
.build()
)
.prepare()
.asRxObservable()
请解释一下observeChangesInTable()方法的重点是什么。什么是我的问题的最佳解决方案。
答案 0 :(得分:2)
根据您的方法,您实际上对数据库执行了query
,只有然后对更改做出反应。
使用StorIOSQLite.observeChangesInTable()
,您可以对表中的更改做出反应,而不会对数据库执行任何queries
。这要便宜得多,并且应该在需要执行debounce()
或window()
,filter()
等的情况下使用,然后只对db进行实际query
。< / p>
希望有所帮助!