首页 > 解决方案 > 过滤具有反向关系的对象时超出最大调用堆栈大小(领域 10.1.1)

问题描述

给出以下架构:

const Person = {
  name: "User",
  primaryKey: "_id",
  properties: {
    _id: "objectId",
    name: "string",
    age: "number",
    company: "Company[]"
  }
};

const Company = {
  name: "Company",
  primaryKey: "_id",
  properties: {
    _id: "objectId",
    name: "string",
    boss: {
      type: 'linkingObjects',
      objectType: 'Person',
      property: 'company'
    }
  }
};

在将一些人和其中几个人添加到公司后,我尝试按年龄过滤并使用代码获取超过 30 年的人realm.objects("Person").filtered("age > 30");

此查询的结果是以下错误:

超出最大调用堆栈大小。

我希望有一个符合要求的人员列表,但我有这个错误。我已经看到,在 10.0.0 版本中,这个错误应该是针对toJSON()功能修复的。如果我尝试按其 id 过滤对象,一切正常,但是一旦我尝试获取一些对象的列表,我就会收到此错误。

有人对此有解决方案吗?

我正在使用 --> 领域:10.1.1 React Native:0.62.2 节点:10.22.1

标签: javascriptnode.jsreact-nativerealmmongodb-realm

解决方案


推荐阅读