我試圖創建一個HTML表格,可以隨着我的用戶使用我的應用程序實時更新Firebase。我真的很努力讓這個工作,我真的不知道從哪裏開始。如何使用Firebase創建動態HTML表格?
基本上,所有需要做的就是創建一個新的表格行,並在用戶與我的應用程序進行交互時實時更新其單元格。
有誰知道任何好的教程,可以指出我在正確的方向嗎?創建HTML表格的代碼示例也很棒!謝謝。
更新: 行!感謝Isaiah Lee,我出去找了一些React的教程。我90%在那裏,但有一個問題,我似乎無法弄清楚...
我能夠更新我的表與新行動態作爲用戶使用我的應用程序,但我不能讓他們填滿數據。我覺得我真的很接近,但我的經驗不足與之反應是抱着我回到這裏......
出於某種原因,這個循環在這裏不與任何數據填充TD的
render() {
return (
<div className="App">
<h1>Talkeetna Numbers</h1>
<table id="numbers">
<tbody>
<tr>
<th>Driver</th>
<th>Coach</th>
<th>Time</th>
<th>Total People</th>
<th>AM Train</th>
<th>PM Train</th>
<th>MEX</th>
<th>Employees</th>
<th>Seats Left</th>
</tr>
{this.state.rows.map(row =>
<tr>
<td>{this.state.driver}</td>
<td>{this.state.coach}</td>
<td>{this.state.time}</td>
<td>{this.state.totalPeople}</td>
<td>{this.state.amTrain}</td>
<td>{this.state.pmTrain}</td>
<td>{this.state.THEMEX}</td>
<td>{this.state.Employees}</td>
<td>{this.state.seatsLeft}</td>
</tr>)}
</tbody>
</table>
</div>
);
}
我的繼承人組件功能
componentDidMount()
{
const logsRef = firebase.database().ref('logs');
logsRef.on('child_added', snap => {
this.addRow(snap.getKey());
//rows.push(snap.getKey());
console.log("adding key: ", snap.getKey());
});
console.log("loading rows...");
for(var rowKey = 0; rowKey < this.state.rows.length; rowKey++)
{
const root = firebase.database().ref().child('logs/' + rowKey);
const driverRef = root.child('Driver');
const coachRef = root.child('Coach');
const timeRef = root.child('Time');
const totalPeopleRef = root.child('Total People');
const AMTrainRef = root.child('AM Train');
const PMTrainRef = root.child('PM Train');
const MEXRef = root.child('MEX');
const EmployeesRef = root.child('Employees');
const seatsLeftRef = root.child('Seats Left');
//sync with DB in real time
driverRef.on('value', snap => {
this.setState({
driver: snap.val()
})
});
coachRef.on('value', snap => {
this.setState({
coach: snap.val()
})
});
timeRef.on('value', snap => {
this.setState({
time: snap.val()
})
});
totalPeopleRef.on('value', snap => {
this.setState({
totalPeople: snap.val()
})
});
AMTrainRef.on('value', snap => {
this.setState({
amTrain: snap.val()
})
});
PMTrainRef.on('value', snap => {
this.setState({
pmTrain: snap.val()
})
});
MEXRef.on('value', snap => {
this.setState({
THEMEX: snap.val()
})
});
EmployeesRef.on('value', snap => {
this.setState({
Employees: snap.val()
})
});
seatsLeftRef.on('value', snap => {
this.setState({
seatsLeft: snap.val()
})
});
}
}
如果你問如何創建html表格,你不應該把firebase作爲你的年齡,因爲它們是完全不同的東西。如果您想知道如何從Firebase讀取數據,請從入門指南開始,當您遇到代碼時,請發佈代碼和Firebase結構,然後我們來看看。 – Jay
嘿Jay,我添加了一些反應代碼,你可以看看它嗎?謝謝! –