使用firebase,我成功地登录了一个用户,但后来我无法从实时数据库查询任何数据。console说snapshot.val()为null,或者在firebase-database.min.js中触发一个错误。我尝试了许多类型的查询和路径格式的参考值(从官方文档和论坛)。当我尝试console.log快照时,它会返回一个firebase对象。添加.val()返回null。但我有数据库的数据。
我也尝试过.once或等待异步函数,但是它给了我同样的结果。
我使用cdn (v8):https://cdnjs.com/libraries/firebase/8.10.0的firebase js
指向代码和错误快照的链接:已删除
链接到lite版本项目:已删除
火源注入和init:
<!-- index.html -->
<script src="../lib/jquery_360/jquery360.min.js"></script>
<script src="../lib/bootstrap_5/js/bootstrap.bundle.min.js"></script>
<!-- <script src="../lib/firebase/firebase.min.js"></script> -->
<script src="../lib/firebase/firebase-app.min.js"></script>
<script src="../lib/firebase/firebase-auth.min.js"></script>
<script src="../lib/firebase/firebase-database.min.js"></script>
<script src="../script/modal.js"></script>
<script src="../script/utility.js"></script>
<script src="../script/customer.js"></script>
<title>customer</title>
// index.js - jquery onload function
const firebaseApp = firebase.initializeApp({
// keys here...
});
auth = firebase.auth();
db = firebase.database();
firebase.auth().onAuthStateChanged((user) => {
if (user) {
var uid = user.uid;
console.log('user logged in!');
$('#login_popup').modal('hide');
Clear_Popup_Message('login_popup_msg_box', null);
GetAllData();
} else {
console.log('user not logged in!');
}
});
// GetAllData()
db.ref('menus').orderByChild('list_order').on('value', (snapshot) => {
prj.configs.menu = snapshot.val();
});



发布于 2021-10-08 01:15:31
我不知道Cloud上的库有什么问题,但是如果我将您的导入更改为
<script src="https://cdnjs.cloudflare.com/ajax/libs/firebase/8.10.0/firebase-app.min.js" integrity="sha512-XNRpfd3CxEDrXcXWvht51k3l8G5cZhcY0kehFjUohBhgRDCozbdSaGz3w96WlDxAgiNZndKnpn1+4532FS3p3w==" crossorigin="anonymous" referrerpolicy="no-referrer"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/firebase/8.10.0/firebase-auth.min.js" integrity="sha512-GAEvFso2oksY5JFkHlrfLhZgAV6aL48qxnbxPnbKnNLeG/XsU/c0lh/g9gocZ2RtbRx6VDTqspPEy9ixWvbfzw==" crossorigin="anonymous" referrerpolicy="no-referrer"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/firebase/8.10.0/firebase-database.min.js" integrity="sha512-XDKFSZOhFNmwmx69Xr0j3zmePQ3NoSgpzZPr49P6oV7ME5ZhEXUqu+KUA0vQtof87P6IX+ycg4PmSms/EF8/pw==" crossorigin="anonymous" referrerpolicy="no-referrer"></script>至
<script src="https://www.gstatic.com/firebasejs/8.10.0/firebase-app.js"></script>
<script src="https://www.gstatic.com/firebasejs/8.10.0/firebase-auth.js"></script>
<script src="https://www.gstatic.com/firebasejs/8.10.0/firebase-database.js"></script>一切都会突然正常运转,不会出错。
https://stackoverflow.com/questions/69418643
复制相似问题