2

シナリオ:

たとえば、realm-js でスキーマを次のように定義します。

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

Realmのオブジェクトを作成し、BusinessRealm に保存しました。次に、このオブジェクトを別の場所で照会しました。さらに処理するために、このフィールド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

私が持っているもの:私が期待するものに対してこれらのハンドラーを定義していないようです。そして、それらのゲッターは配列のインデックスに基づいて定義されます。したがって、このプロキシnumber_of_stores_in_citiesは JavaScript 配列とまったく同じように機能します。から にエントリを 1 つずつコピーしようとし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)ました。ただし、どちらの方法も予想外に遅く、2500 の長さのリストをコピーするのに約 10 秒かかりました。

必要なもの:これらの従来の JavaScript 配列メソッドを使用する代わりに、プレーンな JavaScript 配列をProxyすばやく取得する方法はありますか? これにハンドラーを提供する必要がありProxyますか?

ここに画像の説明を入力

4

0 に答える 0