【发布时间】:2021-03-10 16:52:53
【问题描述】:
我有这个脚本可以从 firebase 运行我的实时数据库中的所有子项:
methods: {
submit: function() {
const gebruikersref = firebase.database().ref('Gebruikers/')
var self = this
gebruikersref.once('value', function(snapshot) {
const lid = self.lidnummer;
const voornaam = self.voornaam;
const achternaam = self.achternaam;
const email = self.email;
snapshot.forEach(function(childSnapshot) {
const data = childSnapshot.val()
});
if(lid == data.Lidnummer) {
console.log('err')
} else {
gebruikersref.push({
Voornaam: voornaam,
Achternaam: achternaam,
Email: email,
Lidnummer: lid
});
}
});
}
}
但是我如何在 foreach 循环之外获得 const data = childSnapshot.val() 以便我可以在这里使用它:
if(lid == data.Lidnummer) {
console.log('err')
} else {
gebruikersref.push({
Voornaam: voornaam,
Achternaam: achternaam,
Email: email,
Lidnummer: lid
});
}
否则 else 方法会运行 x 次子节点的数量,并将推送我的数据(只能推送一次)x 次子节点
【问题讨论】:
-
在更高的范围内声明,能被需要使用的代码看到吗?
-
是的,我知道这样可以看到它,但是我如何从较低的范围在较高的范围内声明它?
标签: javascript firebase vue.js firebase-realtime-database nuxt.js