Solución:
Puede obtener la clave usando la función key()
de cualquier objeto de referencia
Hay dos formas de invocar
push
en el SDK de JavaScript de Firebase.
utilizando
push(newObject)
. Esto generará una nueva identificación de inserción y escribirá los datos en la ubicación con esa identificación.utilizando
push()
. Esto generará una nueva identificación de inserción y devolverá una referencia a la ubicación con esa identificación. Esto es un operación pura del lado del cliente.Sabiendo el n. ° 2, puede obtener fácilmente un nuevo ID de inserción en el lado del cliente con:
var newKey = ref.push().key();
Luego puede usar esta clave en su actualización de múltiples ubicaciones.
https://stackoverflow.com/a/36774761/2305342
Si invoca Firebase
push()
método sin argumentos es una operación pura del lado del cliente.var newRef = ref.push(); // this does *not* call the server
A continuación, puede agregar el
key()
de la nueva referencia a su artículo:var newItem = { name: 'anauleau' id: newRef.key() };
Y escriba el artículo en la nueva ubicación:
newRef.set(newItem);
https://stackoverflow.com/a/34437786/2305342
en tu caso :
writeUserData() {
var myRef = firebase.database().ref().push();
var key = myRef.key();
var newData={
id: key,
Website_Name: this.web_name.value,
Username: this.username.value,
Password : this.password.value,
website_link : this.web_link.value
}
myRef.push(newData);
}
Guardando datos de Firebase v3
function writeNewPost(uid, username, picture, title, body) {
// A post entry.
var postData = {
author: username,
uid: uid,
body: body,
title: title,
starCount: 0,
authorPic: picture
};
// Get a key for a new Post.
var newPostKey = firebase.database().ref().child('posts').push().key;
// Write the new post's data simultaneously in the posts list and the user's post list.
var updates = {};
updates['/posts/' + newPostKey] = postData;
updates['/user-posts/' + uid + "https://newbedev.com/" + newPostKey] = postData;
return firebase.database().ref().update(updates);
}
Puede obtener la última identificación del artículo insertado usando Promesa como esta
let postRef = firebase.database().ref('/post');
postRef.push({ 'name': 'Test Value' })
.then(res => {
console.log(res.getKey()) // this will return you ID
})
.catch(error => console.log(error));