各アイテムにはpos
が与えられます (JavaScript番号なので、倍精度浮動小数点)。次に、pos
で並べ替えてレンダリングします。 。
新しいアイテムが追加されると、それはpos
になります リストのどこにあるかに基づいています:
- リストの一番下-最大
pos
現在リストにあります+バッファ(1024
だと思います 使用されます) - リストの一番上-最小の
pos
現在、2で割ったリストにあります - リストの中央-
pos
の平均 隣接する2つのアイテムの
真ん中のオプションはクライアントによって割り当てられます。上/下は、クライアントによって割り当てられるか、文字列"top"
としてサーバーに渡されます。 または"bottom"
その場合、サーバーがロジックを実行します。
サーバー上で、pos
を割り当てた後 上記のように新しいアイテムに対して、アイテムは隣接関係について最近傍に対してチェックされます-それらが最小距離(.01
)未満である場合 使用されていると思います)、それらは分散しています(pos
の増加にカスケードする可能性があります リスト全体の)。
これが理想的な方法ではないと思いますが、Trelloのやり方です。