gpt4 book ai didi

javascript - Vue,firebase数据库返回空数组

转载 作者:行者123 更新时间:2023-12-03 01:42:18 25 4
gpt4 key购买 nike

我正在尝试从 firebase 数据库检索数据。

我可以连接到 firebase 身份验证并检查 currentUser 数据,这很好。
但我无法从 firebase 数据库检索数据,它只是返回空数组。

Firebase 版本 = 5.0.4
vue 版本 = 2.5.16

数据库结构

users/     
--------uId/
--------------name
--------------email
<小时/>

Vue Js文件夹结构

App.vue    
firebase.js
main.js
components /
------------ Home.vue
<小时/>

firebase.js

var firebase = require('firebase');
require("firebase/auth");
require("firebase/database");

var config = {
apiKey: "...",
authDomain: "...",
databaseURL: "...",
projectId: "...",
storageBucket: "...",
messagingSenderId: "..."
};
firebase.initializeApp(config)
export const auth = firebase.auth();
export const db = firebase.database()

Home.vue

<script>
import {db} from './../firebase';
import {auth} from './../firebase';
var usersRef = db.ref('users');

export default {
name: "Home",
components: {
add_new
},
data(){
return {}
},
mounted: function(){
console.log(usersRef);
var userId = auth.currentUser.uid;
return db.ref('/users/' + userId).once('value').then(function(snapshot) {
snapshot.forEach(function (childData) {
console.log(childData.val())
})
})
}
}
</script>
<小时/>

这里,Vue 应用程序可以正常工作,
只有 firebase.database ( usersRef ) 返回空数组。

这是console.log(usersRef)结果的屏幕截图
/image/NH7gh.png

最佳答案

首先而不是使用多个导入语句,为什么不呢

import {auth, db} from './../firebase';

并尝试改变

snapshot.forEach(function (childData) {
console.log(childData.val())
})

snapshot.val()

var userId = auth.currentUser.uid;
return db.ref('/users/' + userId).once('value').then(function(snapshot) {
console.log(snapshot.val());
});

关于javascript - Vue,firebase数据库返回空数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50782622/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com