Optional
如果需要迁移,请删除指定在需要迁移时是否应删除此 Realm。 该选项与选项sync
不兼容。 @default: false
1.13.0
Optional
指定如果此 Realm 的文件格式是使用旧版本的 Realm 库创建的,是否应自动升级该文件格式。 如果设置为true
并且需要升级文件格式,则会引发错误。
false
2.1.0
Optional
用于加密和解密 Realm 中所有数据的 512 位(64 字节)加密密钥。
0.11.1
Optional
fifo打开 Realm 会创建许多 FIFO 特殊文件,以便协调跨线程和进程对 Realm 的访问。 如果 Realm 文件存储在不允许创建 FIFO 特殊文件(例如 FAT32 文件系统),则无法打开 Realm。 在这种情况下,Realm 需要一个不同的位置来存储这些文件,并且该属性定义了该位置。 FIFO 特殊文件非常轻量,主 Realm 文件仍将存储在path
属性定义的位置。 如果path
定义的目录允许 FIFO 特殊文件,则忽略此属性。
2.23.0
Optional
在内存中指定是否应在内存中打开此 Realm。 这仍然需要一个路径(可以是默认路径)来标识 Realm,以便其他进程可以打开同一个 Realm。 如果 Realm 大于内存大小,则该文件也将用作交换空间,但它不是持久性的,并且会在关闭最后一个实例时被删除。 此选项与选项sync
不兼容。
false
0.10.0
Optional
Optional
首次打开 Realm 时调用的函数。 该函数可以在打开 Realm 之前对其进行填充。 调用回调时,Realm 将处于写事务(write transaction)状态。
新创建的 Realm。
10.14.0
首次打开 Realm 时调用的函数。 该函数可以在打开 Realm 之前对其进行填充。 调用回调时,Realm 将处于写事务(write transaction)状态。
新创建的 Realm。
10.14.0
Optional
需要迁移时运行的函数。
此函数应提供将Realm 数据模型从先前模式转换为新模式的所有逻辑。此选项与选项sync
不兼容。
该函数接受两个参数:
oldRealm
- 执行迁移之前的 Realm。newRealm
- 使用最新schema
的 Realm,应根据需要进行修改。0.12.0
Optional
路径?: 字符串应存储 Realm 数据库的文件的路径。 对于同步的 Realm,将相对路径与AppConfiguration和User.id一起使用,以避免与其他应用程序或用户发生冲突。 绝对路径保持不变,在某些平台(iOS 和 Android)上,应用程序可能没有创建或打开文件的权限 - 权限未经验证。 如果指定了相对路径,则该路径是相对于 AppConfiguration.baseFilePath 的。
0.10.0
Optional
只读指定此 Realm 是否应以只读方式打开。
false
0.10.0
Optional
模式?: (RealmObjectConstructor<AnyRealmObject> | 对象模式)[ ]指定此 Realm 中的所有 Realm 对象类型。首次在此path
创建 Realm 时为必填项。 如果省略,将从现有 Realm 文件中读取模式。
0.10.0
Optional
schema如果更改schema
,则此字段为必填字段,并且必须递增。 这仅适用于本地 Realm。
0.11.0
Optional
should在进程生命周期中首次打开 Realm 时调用的函数,用于确定是否应在将其返回给用户之前对其进行压缩。
它返回true
表示应尝试压缩文件。 如果另一个进程正在访问它,则将跳过压实。
总文件大小(数据 + 可用空间)。
文件中数据使用的总字节数。
true
在打开 Realm 文件之前是否应先压缩该文件。
2.9.0
// compact large files (>100 MB) with more than half is free space
shouldCompact: (totalBytes, usedBytes) => {
const oneHundredMB = 100 * 1024 * 1024; // 100 MB
return totalBytes > oneHundredMB && usedBytes / totalBytes < 0.5;
}
在进程生命周期中首次打开 Realm 时调用的函数,用于确定是否应在将其返回给用户之前对其进行压缩。
它返回true
表示应尝试压缩文件。 如果另一个进程正在访问它,则将跳过压实。
总文件大小(数据 + 可用空间)。
文件中数据使用的总字节数。
true
在打开 Realm 文件之前是否应先压缩该文件。
2.9.0
// compact large files (>100 MB) with more than half is free space
shouldCompact: (totalBytes, usedBytes) => {
const oneHundredMB = 100 * 1024 * 1024; // 100 MB
return totalBytes > oneHundredMB && usedBytes / totalBytes < 0.5;
}
Optional
同步?: SyncConfiguration使用TypeDoc生成
用于创建Realm 实例的选项。