设想:
例如,您在 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
我所拥有的:似乎他们没有按照我的期望定义这些处理程序。并且它们的 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 的列表。
我需要什么:除了使用这些传统的 javascript 数组方法之外,有没有一种方法可以让我Proxy
快速从 我需要为此提供我的处理程序Proxy
吗?