モデルをコレクションに追加するときに、モデルをコレクションに追加するエレガントな方法を探しています。バックボーンのソース コードには、unshift
それを行う方法がありますが、add
モデルをコレクションに追加する方法は複雑すぎて単純に拡張できません。写真とツイートに依存するスライド ショーを作成しており、常に最新のものを一番上に、最も古いものを最後に表示する必要があります。私の問題の単純化:
アプリの初期化、API 呼び出しの戻り値:
apple, banana, lemon
つまり、apple が最新のスライドです。コレクションが構築されます。
apple, banana, lemon
間隔の後、API 呼び出しは、新しい果物があるかどうかを確認します。結果は次のとおりです。
orange
コレクション追加モデル:
(apple, banana, lemon), orange
それは私が望んでいることではありません。オレンジが一番新しい果物で、その次がリンゴです。ただし、この場合、追加する前に最初のコレクションを逆にし、スライドを描画するときに再度逆にすることができました。さて、物事はより複雑になります(明確にするために括弧を追加しました):
さらに多くの果物の API 呼び出しチェック:
pineapple, kiwi
コレクションは、新しいモデルを 1 つずつ追加します。
((apple, banana, lemon), orange), pineapple, kiwi
新しいものから古いものまで、私のコレクションは次のようになります。
((not so old, older, oldest), pretty new), brand new, new
これはまったく意味がありません:)
もちろん、API の応答を変更することで作業が楽になる可能性がありますが、現在のところ、それはオプションではありません。また、応答内のアイテムの順序が新しい - > 古いので、それは問題ではありません。
unshift
これに対するすぐに使える解決策を見つけることができませんでした。また、バックボーン ソースの一部を新しいモデルに複製することによって、物事を過度に複雑にしたくありません。提案?ありがとう!