是 StreamBulider 将数据视为两次读取和更改数据或仅更改数据的新读取
is StreamBulider will consider data as new reads for twice reads and change data or only for changing ones
我知道 .get()
会将其集合中的任何数据视为新读取,但是以下代码呢
StreamBuilder<QuerySnapshot>(
stream: FirebaseFirestore.instance.collection("users").doc(widget.userId)
.collection("allEvents").snapshots(),
调用.snapshot()
获取数据,然后监听变化。现在它将考虑获取数据并将更改的数据视为读取或仅将更改的数据视为读取?
when you are listen for changes in real-time changes,这意味着你第一次附加监听器,你就得到了查询对应的所有文档。这意味着您必须支付与查询 returns 的文档数量相等的读取次数。此后,每当文档中的 属性 发生更改时,您都会收到相应更改的通知。这意味着您只需为该特定操作付费,仅此而已。
我知道 .get()
会将其集合中的任何数据视为新读取,但是以下代码呢
StreamBuilder<QuerySnapshot>(
stream: FirebaseFirestore.instance.collection("users").doc(widget.userId)
.collection("allEvents").snapshots(),
调用.snapshot()
获取数据,然后监听变化。现在它将考虑获取数据并将更改的数据视为读取或仅将更改的数据视为读取?
when you are listen for changes in real-time changes,这意味着你第一次附加监听器,你就得到了查询对应的所有文档。这意味着您必须支付与查询 returns 的文档数量相等的读取次数。此后,每当文档中的 属性 发生更改时,您都会收到相应更改的通知。这意味着您只需为该特定操作付费,仅此而已。