Допустим, у меня есть следующая база данных на Firebase:
"items" : {
"-LYC_oPtzMyRDZSXPcLY" : {
"amount" : "HUF 2,500",
"category" : "home",
"comment" : "Comment_1",
"date" : "2019-02-08"
},
"-LYC_sXCY-crys5OUj5Y" : {
"amount" : "HUF 5,000",
"category" : "restaurant",
"comment" : "Comment_2",
"date" : "2019-02-04"
},
"-LYC_DXCY-cays5dOdj2R" : {
"amount" : "HUF 4,000",
"category" : "food",
"comment" : "Comment_3",
"date" : "2019-02-03"
}
}
Мои "элементы" расположены в порядке согласно "дате".Теперь я хотел бы разместить новый элемент после первого «элемента», потому что этот новый элемент будет иметь дату 2019-02-06, в настоящее время это то, что я делаю:
//post new item
axios.post('/items.json', itemData) etc....
//get all items
axios.get('/items.json')
.then(res => {
const fetchedItems = [];
for (let key in res.data) {
fetchedItems.push({
...res.data[key],
});
} etc....
//sort all items like this:
fetchedItems.sort(function (a, b) {
return new Date(b.date) - new Date(a.date);
});
//replace "items" with "fetchedItems" on Firebase somehow...
Теперь у меня вставлен новый элементи предметы отсортированы по дате.Мой вопрос заключается в том, как я могу вставить новый элемент в место, где я хочу ... быстрее?Я не хочу перебирать все данные, если я нашел место, куда я хотел бы поместить свой новый "предмет".
Заранее спасибо!