Как скопировать сгенерированный уникальный идентификатор из функции push в потомок как ID (firebase) - PullRequest
0 голосов
/ 18 сентября 2018

Мне интересно, как я могу скопировать уникальный идентификатор, который будет сгенерирован из PUSH, в базу данных firebase в его дочерний объект как идентификатор.

см. Пример изображения ниже:

enter image description here

Моим первым подходом было создание собственного уникального идентификатора, однако я считаю, что уникальный идентификатор firebase более надежен, чем создание собственного.

this.afd.database.ref().child('Data/'+ MyUniqueID).set(data);

Можетсоветуете?Спасибо

Ответы [ 2 ]

0 голосов
/ 18 сентября 2018

Когда вы вызываете push() без аргументов, он вернет ссылку на базу данных в месте отправки.Он имеет свойство key с уникальным ключом, сгенерированным на клиенте.Затем вы можете использовать этот ключ в объекте, который вы затем пишете в этом месте.Например, в простом javascript (не угловом):

var objectToPush = { data: "foo" };
var ref = parent.push();
objectToPush.id = ref.key;  // add the id to the object to write
ref.set(objectToPush);
0 голосов
/ 18 сентября 2018

См. Обновление определенных полей для веб

  // Get a key for a new Post.
  var newPostKey = firebase.database().ref().child('posts').push().key;

и Получение уникального ключа, сгенерированного push () для nodejs

// Generate a reference to a new location and add some data using push()
var newPostRef = postsRef.push();

// Get the unique key generated by push()
var postId = newPostRef.key;
...