0
Firebaseでオブジェクトを更新しようとしているのは、そのプロパティの1つが存在しない場合だけです。if条件に基づいてFirebaseのオブジェクトを更新する
これまでのロジックは、定義された旅行の写真をループし、この写真の中に「location」というプロパティが見つからない場合は、プロパティ「location」を挿入してオブジェクトを更新しますプロパティ "coord"、 "locationname"、 "regioncode"、 "thumbnailurl"を持つオブジェクト)。
問題は、ページを読み込んだ後、プロパティ "location"を持たない写真にオブジェクト "location"が挿入されないということです。
私のデータベース構造:
マイJS:
db.ref('photos/' + owneruid + '/trips/' + tripuid).once('value').then(snap => {
var photos = snap.val()
for (var key in photos) {
console.log('Photo ID is ' + key)
var thisPhoto = photos[key]
this.photos.push(thisPhoto)
var hasLocation = 'location';
if(photos[key].hasOwnProperty(hasLocation)){
console.log("location exists")
}
else{
console.log("NO LOCATION")
var location = {coord:"", locationname:"", regioncode:"", thumbnailurl:""}
function writeLocation(location) {
db.ref('photos/' + owneruid + '/trips/' + tripuid + thisPhoto).update(location)
}
this.photos.push(thisPhoto)
}
}
this.photosDataIsReady = true
})
我々はコンソールで見ることができるように、ループ内の条件が動作するかどうか:
あなたがオブジェクトを更新するときに、あなたが直面しているどのような問題は言及していませんか? firebaseオブジェクトを更新する方法がわからない、または何らかの例外が発生しているということです。 –
基本オブジェクトを更新できない場合は、firebaseがどのようにオブジェクトを保持/更新するかを理解する必要があります。 https://firebase.google.com/docs/database/admin/save-dataこのリンクをクリックすると役立ちます。 –
ありがとうMurtaza、あなたは正しい、私は説明しなかった。だから基本的には、 "場所"が存在しない各写真のオブジェクト "場所"を作成する必要がありますが、私はコードを繰り返し実行し、オブジェクト "場所"はまだ追加されていません – marcvander