如何在更改时呈现数据?

时间:2019-04-20 15:14:12

标签: node.js firebase firebase-realtime-database handlebars.js real-time

我正在尝试在nodejs作为服务器和firebase作为我的实时数据库中构建一个项目,并且在将数据转发到html时遇到一些问题。

我得到了错误:

  

将标头发送到客户端后无法设置标头   不断变化

我正在尝试将更新的arr传递给html,但是找不到解决方法。

server.js:

        const locksRef = await firebase.firebase.database().ref('locks')
        let arr = []
        //get list of locks
        const t = locksRef.on('value', (data) => {
            tempResult3 = data.val()
            result3 = []
            const numOfKeys = Object.keys(tempResult3)

            numOfKeys.forEach((x) => {
                result3.push(tempResult3[x])
            })
            result3.forEach((k) => {
                myLocks.forEach((my) => {
                    if (k.id == my) {
                        arr.push(k)
                    }
                })
            })
            res.render('ListOfLocks', { arr })  
        })

html

<body>
    <h1>ListOfHouses</h1>
    <table border="1px solid black">
        <thead>
            <th>Name And Address</th>
        </thead>
        <tbody>
            {{#each arr}}
            <tr>
                <td id="data"> {{name}} - {{address}}</td>
                <td>
                    <form action="/seekKeys" method="post"><button name="{{locks}}" type="submit">LookForKey</button>
                    </form>
                </td>
            </tr>
            {{/each}}
        </tbody>
    </table>
</body>

0 个答案:

没有答案