Это просто. Я объект под названием obj
и ссылка называется ref
, когда я делаю:Как получить autoID нового объекта после вызова push() в firebase?
ref.push(obj, function(err){});
или
ref.push().set(obj, function(err){});
как получить автогенерируемая идентификатор последнего сохраненного объекта?
«Уникальное имя генерируется нажатием() предваряется с клиентской сгенерированными метками времени, так что результирующий список будет хронологически отсортирован.» Означает ли это, что два клиента с разным временем устройства будут создавать хронологически несогласованный список? – webduvet
Если вам нужно упорядочить клиентов, вы, вероятно, должны использовать 'Firebase.ServerValue.TIMESTAMP'. Либо установите его как приоритет, либо включите его как значение в свой объект. См. Https://www.firebase.com/docs/web/api/servervalue/timestamp.html. Одна вещь, о которой нужно помнить: при использовании нескольких клиентов эти временные метки, вероятно, не уникальны. Поэтому они отлично подходят для заказа данных, но не для использования в качестве идентификатора. –
@FrankvanPuffelen Это не * совершенно * право. 'push()' является псевдонимом для генерации нового идентификатора и вызова 'set()' на нем. Вызов 'push()' без аргумента является чисто клиентской, но передача данных, таких как 'push (myObj)', будет вызывать 'set()' под капотом и записываться на сервер. Можете ли вы обновить свой ответ? –