Я хочу получить ключ, генерируемый при отправке данных в базу данных Firebase. Я хочу обработать их с помощью своей собственной функции,
Таким образом, проблема заключается в том, что когда пользователь заполняет форму, которую он отправляет данные в нашу БД в реальном времени, в этих данных содержатся некоторые изображения ( необязательно ), и мне не нужно позволять объект изображения пустой в БД, так как это сделать, и когда пользователю нужно отправить изображение, я хочу сохранить это изображение в том же порядке, а не в новом порядке.
Node
![Node](https://i.stack.imgur.com/qKbus.png)
Вот моя функция
handleOrder = () => {
const { nameOfProblem, description, userId, imageOfPrblem, providerId } = this.state;
const PushData = firebase.database().ref("request/" + providerId + "/" + userId + "/orders/");
const ref = firebase.storage().ref("users/" + userId + "/UserImageOrders/" + path);
let file = imageOfPrblem.uri;
const path = "img_" + imageOfPrblem.fileName;
var newOrderRef = PushData.push({
nameOfProblem: nameOfProblem,
description: description,
});
if (file) {
let keyG = newOrderRef.key; // Key Generated with .push()
PushData.child(keyG).update({ // didn't updated the key generated just add new element with new key !!
imageOfPrblem: imageOfPrblem
});
ref.put(file).then(() => {
console.log("File uploaded..")
});
}
}
handleImages = () => {
const options = {
title: "Select Images!",
storageOptions: {
skipBackup: true,
path: "images"
}
};
ImagePicker.showImagePicker(options, response => {
console.log("Response = ", response);
if (response.uri) {
this.setState({ imageOfPrblem: response });
}
if (response.didCancel) {
console.log("User cancelled image picker");
} else if (response.error) {
console.log("ImagePicker Error: ", response.error);
} else if (response.customButton) {
console.log("User tapped custom button: ", response.customButton);
alert(response.customButton);
}
});
};