如果state
为SubscriptionSetState.Error ,则这将是一个表示SubscriptionSet为何处于错误状态的字符串。 如果没有错误,则为null
。
表示错误的字符串,如果没有错误,则为null
。
集合中是否没有订阅。
true
如果集合中没有订阅,则为false
。
集合中的订阅数量。
订阅集的状态。
订阅集的版本。 每次应用SubscriptionSet.update时,该值都会递增。
SubscriptionSet的版本。
使订阅集可迭代。
集合中每个值的迭代。
for (const subscription of subscriptions) {
// ...
}
调用此函数可从回调内部对此 SubscriptionSet 进行更改,例如在集合中添加或删除订阅。
MutableSubscriptionSet 参数只能在回调中使用,不得在回调返回后使用。
回调完成的所有更改都将批处理发送到服务器。您可以await
对update
的调用,或调用SubscriptionSet.waitForSynchronization以等待新数据可用。
一个回调函数,它接收MutableSubscriptionSet实例作为第一个参数(可用于在集合中添加或删除订阅)和与 SubscriptionSet 关联的Realm作为第二个参数(主要在使用FlexibleSyncConfiguration中的initialSubscriptions
时有用)。
在同步 SubscriptionSet 时解析的 Promise,或者在同步期间出现错误时被拒绝的 Promise(请参阅SubscriptionSet.waitForSynchronization )
await realm.subscriptions.update(mutableSubscriptions => {
mutableSubscriptions.add(realm.objects("Cat").filtered("age > 10"));
mutableSubscriptions.add(realm.objects("Dog").filtered("age > 20"), { name: "oldDogs" });
mutableSubscriptions.removeByName("youngDogs");
});
// `realm` will now return the expected results based on the updated subscriptions
等待服务器确认该订阅集并返回匹配的对象。
如果state
为SubscriptionSetState.Complete ,则 Promise 将立即得到解析。
如果state
为SubscriptionSetState.Error ,则 Promise 将被立即拒绝。
在同步完成时解决的 Promise,或者在同步期间出现错误时被拒绝的 Promise。
使用TypeDoc生成
表示 Realm 实例的所有活动 Flexible Sync 订阅的集合。
服务器将持续评估实例订阅的查询,并发送与这些查询匹配的数据,并删除不再匹配的数据。
只能在SubscriptionSet.update回调内调用相应MutableSubscriptionSet实例上的方法来修改订阅集。