Как получить индекс нового объекта на .childMoved - PullRequest
0 голосов
/ 02 июня 2018

Я использую упорядоченный запрос базы данных Firebase в реальном времени.У меня есть прослушиватель .childMoved по запросу, и когда чей-то индекс в упорядоченном списке изменяется, мой слушатель срабатывает.Однако, похоже, нет способа узнать, что представляет собой новый индекс объекта.

rtdb.child(refString).queryOrdered(byChild: "queuePosition")
     .observe(.childMoved, with: { snapshot in
         // Do something here with snapshot data
    }) { error in
        // error
    }

Как узнать, куда должен быть перемещен объект?Или мне просто сделать сортировку на клиенте?Спасибо!

1 Ответ

0 голосов
/ 02 июня 2018

База данных Firebase не предоставляет индексы, так как они плохо масштабируются в многопользовательской среде.У него есть возможность передать ключ предыдущего одноуровневого узла с помощью observe: andPreviousSiblingKey.

. С помощью этого ключа вы можете искать узел-брат и перемещать дочерний узел послечто.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...