如何从领域对象代理列表中获取普通的javascript数组?

时间:2018-03-16 23:16:38

标签: javascript react-native realm es6-proxy

情境:

例如,您可以在realm-js中将模式定义为:

export const businessSchema = {
  name: 'Business',
  primaryKey: 'id',
  properties: {
    id: 'int',
    number_of_stores_in_cities: 'int[]',
  }
}

您已经创建了Business的对象并保存到Realm。然后在其他地方查询了这个对象。并且您希望将此字段number_of_stores_in_cities复制到javascript数组js_number_of_store_in_cities以进行进一步处理。

我的期望: Realm已定义处理程序以获取整个目标列表,我可以在number_of_stores_in_cities.all() <中将其称为number_of_stores_in_cities.getList()Proxy / p>

我拥有的内容:好像他们没有根据我的预期定义这些处理程序。并且它们的getter是基于数组的索引定义的。所以这个代理number_of_stores_in_cities的工作方式与javascript数组完全相同。我尝试将条目从number_of_stores_in_cities逐个复制到js_number_of_stores_in_cities。我也试过const js_number_of_stores_in_cities = Array.prototype.slice.call(number_of_stores_in_cities)。但是,这两种方法都出乎意料地慢,因此大约需要10秒才能复制2500个列表的长度。

我需要的是什么:有没有一种方法可以快速从Proxy获取普通的javascript数组?我是否需要向此Proxy提供我的处理程序?

enter image description here

0 个答案:

没有答案