【发布时间】:2020-03-02 05:02:15
【问题描述】:
所以我试图在我的应用程序中从 Firebase Firestore 数据库中呈现一些数据,我遵循了某个让我启动并运行的教程,但现在我正试图弄清楚如何从我自己的数据库中提取数据,那是另一回事。
这是我的代码块,我认为它将根据用户输入的控制号从 firestore 监听数据,现在控制号是硬编码的,然后我将弄清楚如何从表单中获取值.
//Code to Query data from Database
function SingleQuery() {
const [drivers, setDrivers] = useState([]);
useEffect(() => {
const unsubscribe = firebase
.firestore()
.collection("drivers")
.where("controlNumber", "==", "202003010850-014746") //get data according to control number
.onSnapshot(snapshot => {
const newDriver = snapshot.docs.map((doc) =>
id: doc.id,
...doc.data()
)
});
setDrivers(newDriver);
});
return () => unsubscribe();
}, []);
return drivers;
}
之后,它应该在这里渲染数据:
<div id="results-list">
{drivers.map((driver) =>
<ol key={driver.id}>
<li>{driver.controlNumber}</li>
</ol>
)}
</div>
现在我遇到了各种解析错误和意外标记。
大家好,这是更新。我现在一切都已启动并运行,但我想知道是否有人可以帮助我根据用户输入的控制号从 Firestore 查询数据。
<div className="violationQuery">
<br />
<br />
<br />
<h4>Enter Control Number</h4>
<div className="searchBar" class="input-group-sm">
<form>
<input
type="text"
className="form-control"
aria-label="Small"
aria-describedby="inputGroup-sizing-sm"
placeholder="Control Number"
id="controlNum"
/>
<br />
<input className="btn btn-primary" type="submit" value="Submit" />
</form>
</div>
我需要获取input的值,放到上面SingleQuery Hook中的where()方法中。
【问题讨论】:
-
你能分享一下那些解析错误吗?并分享你如何使用 SingleQuery 钩子的代码。
-
嗨,当然。这是 SingleQuery 的代码:` export const violationQuery = () => { const drivers = SingleQuery(); ` 在该代码下面是一个 return() ,其中包含搜索栏的代码和呈现数据的代码 这里还有一个解析错误:解析错误:类型转换表达式应该用括号括起来 它指向 SingleQuery 中“id:”中的冒号
-
不要将该信息放在评论中,而是通过单击其下方的小
edit链接将其添加到您的问题中。 -
@FrankvanPuffelen 我的错。这是我第一次在这里问
标签: reactjs firebase google-cloud-firestore