从绑定创建一个包装Obj
的RealmObject
。
管理对象的 Realm。
对象属性在创建时的值。
Static
Static
Optional
不对称(可选)在使用@realm/babel-plugin时,如果使用了 Flexible Sync,则可以指定模式应单向同步。
Static
Optional
嵌入式使用@realm/babel-plugin时,可以选择指定模式为嵌入式模式。
Static
Optional
主键使用@realm/babel-plugin时,可以选择指定模式的主键。
添加侦听器callback
,当活动对象实例发生更改时将调用该侦听器。
发生更改时要调用的函数。
Optional
keyPaths : string | string []指示与侦听器相关的更改的下限。 这是一个下限,因为如果添加了多个侦听器(每个侦听器都有自己的keyPaths
),这些键路径的并集将确定被视为与在该对象上注册的所有侦听器相关的更改。 换言之:如果存在具有不同键路径的其他侦听器,则侦听器触发的次数可能会超过键路径指定的次数。
如果callback
不是函数,则出现 TypeAssertionError。
wine.addListener((obj, changes) => {
// obj === wine
console.log(`object is deleted: ${changes.deleted}`);
console.log(`${changes.changedProperties.length} properties have been changed:`);
changes.changedProperties.forEach(prop => {
console.log(` ${prop}`);
});
})
wine.addListener((obj, changes) => {
console.log("The wine got deleted or its brand might have changed");
}, ["brand"])
添加侦听器是一项异步操作,因此首次调用回调以在添加侦听器时通知调用者。 因此,首次调用回调时,它将包含changes.changedProperties
的空数组。
返回在指定关系中链接到此对象的所有对象。
链接到此对象类型的对象的类型。
引用此对象类型的对象的属性的名称。
链接到该对象的结果。
如果关系无效,则抛出 AssertionError。
此对象所属类型的模式。
描述此对象的CanonicalObjectSchema 。
从此对象中删除侦听器callback
。
之前添加为侦听器的函数
如果callback
不是函数,则出现 TypeAssertionError。
JSON 序列化的普通对象表示形式。 使用循环 JSON 序列化库(例如@ungap/ Structured-clone和flatted )对具有循环结构的 Realm 实体进行字符串化。
Optional
_ :字符串Optional
缓存:未知一个普通对象。
使用TypeDoc生成
Realm 对象的基类。
例子
要定义具有所需
name
和age
属性的Person
类,请定义一个static schema
:例子
如果使用@realm/babel-plugin :要定义具有必需
name
和age
属性的类Person
,需要在构造类型参数时指定这些属性,以支持仅使用 Typescript 的模型定义:看
对象模式
类型参数
T
- 此类的类型(例如,如果您的类为Person
,则T
也应为Person
- 由于 TypeScript 的工作原理,此重复项是必需的)类型参数
RequiredProperties
- 使用new
构造实例时所需的该类的任何属性的名称。 任何未指定的属性都是可选的,如果其他地方没有指定默认值,则默认为合理的 null 值。