javascript - 从随机生成的 firebase 数据库子同步对象更改
问题描述
我从安装在 Raspberry Pi 中的 DHT22 传感器获取实时数据更新到 firebase 数据库。我的目标是使用收到的数据实时更新网页。我似乎无法理解如何访问孩子的值(其密钥是随机生成的)
// Get a reference to the database service
var database = firebase.database();
// Get element from the DOM
const tempElement = document.getElementById('temperature');
const humElement = document.getElementById('humidity');
// Create temperature database reference
const tempRef = database.ref('DHT22').child();
// Sync objects changes
tempRef.limitToLast(1).on('value', function(snapshot) {
snapshot.forEach(function(childSnapshot) {
var childData = childSnapshot.val();
console.log("temperature: " + childData);
tempElement.innerText = childData;
});
});
解决方案
要访问密钥内的数据,请尝试以下操作:
const tempRef = database.ref('DHT22');
tempRef.limitToLast(1).on('value', function(snapshot) {
snapshot.forEach(function(childSnapshot) {
var childData = childSnapshot.val().Date;
var timeData = childSnapshot.val().Time;
var temp = childSnapshot.val().Temperature;
tempElement.innerText = childData;
});
});
在节点上添加一个引用,DHT22
然后forEach
在随机生成的密钥内部循环使用并检索数据。
推荐阅读
- javascript - [未处理的承诺拒绝:TypeError:未定义不是对象(评估'_ref.about')]
- typescript - 获取传递给函数的数组值的类型
- javascript - 如何检查 iframe(从 CDN 脚本加载)内容是否已加载
- processing - 在 JSP5 中使用随机
- django - 在 Nuxt Auth 中设置 Session ID Cookie
- javascript - Next.js, Redux, Redux-saga, @reduxjs/toolkit make store - 没有重载匹配这个调用
- javascript - THREEJS - 保留与 Sprite 完全相同的 PNG 结果
- python - 在一个脚本上使用python 3.5,在另一个脚本上使用2.7,我可以使用IPC(mmap)或套接字在另一个进程更新时立即读取一个进程中的值吗?
- linux - 如何在 Linux 下的 Mono 应用程序中使用串口?
- python - 如何将 dockerized python 脚本链接到 mysql docker 容器以在同一主机上加载数据?