构造函数

属性

下载打开前行为: Readonly<OpenRealmBehaviorConfiguration> = ...

如果要等待下载同步 Realm 完成后再打开它,则为默认行为设置。

已弃用

从 v12 开始

打开 Local Realm Behaviour: Readonly<OpenRealmBehaviorConfiguration> = ...

如果要立即打开同步的 Realm 并开始处理,则使用默认行为设置。 如果这是您第一次打开 Realm,则在背景下载服务器数据时,Realm 将为空。

已弃用

从 v12 开始

方法

  • 为 Realm 应用启用通过单个连接复用多个同步会话的功能。 打开大量同步 Realm 时,由于服务器上有所有打开的套接字,系统可能会用完文件描述符。 会话多路复用旨在缓解这个问题,但它可能不适用于配置了故障转移的服务器。 仅当您看到有关达到文件描述符限制的错误并且知道自己正在使用许多同步会话时才使用。

    返回void

  • 启动客户端重置。 在重置之前,必须关闭 Realm。

    如果与 Atlas Device Sync 的通信表明存在无法恢复的错误,导致无法继续正常同步,则可能需要重置已同步的 Realm。最常见的原因是客户端断开连接的时间过长。

    Realm 的本地副本将移至恢复目录以妥善保管。

    未成功同步到 Atlas 的本地写入将出现在 Realm 文件的本地恢复副本中。 重新下载的 Realm 最初仅包含 Realm 在服务器上同步时存在的数据。

    参数

    返回void

    已弃用

    抛出异常

    如果无法重置,则出现错误。

    例子

    {
    * // Once you have opened your Realm, you will have to keep a reference to it.
    * // In the error handler, this reference is called `realm`
    * const config = {
    * // schema, etc.
    * sync: {
    * user,
    * partitionValue,
    * error: (session, error) => {
    * if (error.name === 'ClientReset') {
    * let path = realm.path; // realm.path will no be accessible after realm.close()
    * realm.close();
    * Realm.App.Sync.initiateClientReset(app, path);
    * // - open Realm at `error.config.path` (oldRealm)
    * // - open Realm with `config` (newRealm)
    * // - copy required objects from oldRealm to newRealm
    * // - close both Realms
    * }
    * }
    * }
    * };
    * }

使用TypeDoc生成