如何在 Realm 类中声明函数



查看文档,Realm 对象可以支持像这样 Realm 类中的函数

class Person extends Realm.Object {
  get fullName() {
    return this.firstName + ' ' + this.lastName;
  }
}

但是,我需要有一个附加到 realm 对象的函数(因为此架构的所有对象都需要这个(。我找不到太多关于get运算符的文档,从它的名字猜测,我假设它需要我返回一些东西。我可以返回空值,但这很混乱。我怎样才能声明这样的函数

class Person extends Realm.Object {
   function doTheThing(thatThing) {
        ThingsToDo.DoThis(thatThing);
      }
   }

不归还任何东西?

编辑:我试图在 get 函数中做我需要的事情,但是看起来这就是 Realm 的集合评估 get 函数的方式

if (isIndex(property)) {
            return getProperty(collection[keys.realm], collection[keys.id], property);
}

而且它似乎不会在 get 函数中运行代码,除非它在 return 语句中。

get定义了一个与传统对象方法不同的类属性getter。有关详细信息,请参阅文档。由于类支持仍然被认为是"有限的"(根据 Realm 文档(,您遇到的问题可能是"设计使然",目前只支持 getter。您可能需要将逻辑移动到一个实用程序方法中,以便通过该实用程序方法传递 Realm 模型实例。

最新更新