javascript - 如何查找未知的 Firebase 文档?
问题描述
我正在用 HTML 和 Firebase 建立一个朋友/追随者系统。我已经制作了一个添加新朋友的页面。当我按下“添加朋友”按钮(下图)时,我希望后端找到文件到 li 中的配置文件,但我不知道如何找到确切的文件。您还可以在下面看到我的 Firestore 结构。
Javascript:
firebase.auth().onAuthStateChanged(function(user) {
db.collection('users').get().then(function(snapshot) {
console.log(snapshot.docs)
setupFindFriends(snapshot.docs)
})
const findfriends = document.querySelector('.findfriends');
const setupFindFriends = (data) => {
let html = '';
data.forEach(doc => {
const friend = doc.data();
const li = `
<li>
<div class="name">${friend.Fullname}</div>
<img class="friendpfp" src="${friend.pfpURL}">
<button class="addfriend">Add friend</button>
</li>
`;
html += li
})
findfriends.innerHTML = html;
};
});
解决方案
您必须将文档 ID 传递给addFriend()
函数。大致如下(未经测试):
firebase.auth().onAuthStateChanged(function(user) {
db.collection('users').get().then(function(snapshot) {
console.log(snapshot.docs)
setupFindFriends(snapshot.docs)
})
const findfriends = document.querySelector('.findfriends');
const setupFindFriends = (data) => {
let html = '';
data.forEach(doc => {
const friend = doc.data();
const li = `
<li>
<div class="name">${friend.Fullname}</div>
<img class="friendpfp" src="${friend.pfpURL}">
<button class="addfriend" onclick="addFriend('${friendId}')">Add friend</button>
</li>
`;
html += li
})
findfriends.innerHTML = html;
};
});
function addFriend(friendId) {
console.log(friendId);
// Do something with friendId, e.g. create or update a Firestore doc, etc ...
}
推荐阅读
- excel - 获取每月更改位置的多个单元格值
- openshift - 什么组件正在解析 OpenShift 路由器中的域
- python - 修复 INIT AND QUIT 的 no 模块后,我的 Vs pygame 仍然不显示突出显示
- python - Dask - 新集群创建失败,“dask”用户欠 HDFS 文件
- python - 我如何理解这个 Python “def”代码?
- compiler-errors - OpenBugs:扫描了无效或意外的令牌
- mysql - mamp phpmyadmin 错误脚本导入数据库
- css - 放置在 iframe 中时,闪亮的表格会失去居中
- ajax - 如何通过 ajax 进行分页使用正确的分页链接,而不是像 admin-ajax.php/page/n 这样的东西?
- python-3.x - 如何使用 Tor 和 stem 更新 IP