使用Express和EJS在Node.js中重新加载页面 [英] Reload page in Node.js using Express and EJS

查看:303
本文介绍了使用Express和EJS在Node.js中重新加载页面的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试在基础数据模型更改时重新加载浏览器页面:

I'm trying to reload the browser page when the underlying data model changes:

var request = require('request');
var express = require('express');
var app = express();
var bodyParser = require('body-parser');

app.set('view engine', 'ejs');
app.use(bodyParser.urlencoded({ extended: false }));

var requests;

app.get('/', function(req, res) {
    res.render('index', {
        requests: requests
    });
});

app.listen(3000);

...以及稍后请求数据模型更改时:

...and later when requests data model changes:

request.get('localhost:3000/', function(error, response, body) {
    console.log(body);
});

但我的浏览器页面不会刷新,除非我用鼠标手动点击刷新按钮。我缺少什么?

but my browser page doesn't refresh unless I manually tap the refresh button with my mouse. What am I missing?

编辑:这是我的 index.ejs 代码:

<!DOCTYPE html>
<html>

<ul>
    <% requests.forEach(function(match) { %>
        <form action="/acceptRequest" method="post" enctype="application/x-www-form-urlencoded">
            <input type="text" name="id" value="<%= match.id %>">
            <input type="text" name="fighter1" value="<%= match.fighter1 %>"> vs.
            <input type="text" name="fighter2" value="<%= match.fighter2 %>"> on
            <input type="text" name="fightdate" value="<%= match.date %>"> in
            <input type="text" name="rounds" value="">
            <input type="submit" value="Submit">
        </form>
        <br>
        <% }); %>
</ul>

</html>


推荐答案

要重新加载html页面:

To reload the html page:

<script>
location.reload(true/false);
</script>

此外,您希望在进行更改时重新启动服务器,使用nodemon而不是nodejs来运行服务器。

Also, you want to restart the server whenever a change is made use nodemon instead of nodejs to run your server.

安装nodemon:

npm install -g nodemon

运行服务器(app.js是主服务器文件)

To run the server(app.js is the main server file)

nodemon apps.js

Nodemon看起来进行更改并在找到服务器时重新启动服务器。

Nodemon looks for the changes and restarts the server whenever found.

这篇关于使用Express和EJS在Node.js中重新加载页面的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆