gpt4 book ai didi

node.js - 开始使用express.js,提供动态 HTML

转载 作者:太空宇宙 更新时间:2023-11-03 23:41:46 24 4
gpt4 key购买 nike

我正在使用node.js 和express 编写一个单页Web 应用程序。在浏览了一些在线教程后,我发现这就是express.js如何使用HTML、javascript和css来服务客户端目录

app.use(express.static(__dirname + '/public'));

除了公共(public)目录必须具有静态的 .html 根文件之外,这非常有效。我想知道如何使用相同的方法提供动态 HTML 文件。

我想在页面中插入一些数据,例如顶部的“Hello user_name”。我该如何对这个单个文件执行此操作。

我只想在启动时执行一次,之后我的应用程序将进行 REST API 调用并获取纯 JSON 响应,然后将其放入页面中。

最佳答案

据我所知,您不能使用快速静态服务器来提供动态文件。为了提供动态 HTML,您需要使用模板引擎,例如 jade或其中任何一个templating engines .

Jade 使用起来非常简单,并且默认情况下受到 Express 支持。要设置 jade,请在应用程序配置 block 中包含以下行:

app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'jade');

第一行设置您的 View 目录 - 将从该目录提供模板文件。由于您只想提供索引文件,因此该目录将包含您的index.jade 模板。第二行将jade设置为模板引擎。

现在,您需要创建一个获取路由“/”来提供索引文件,而不是使用静态服务器来提供index.html,如下所示:

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

关于node.js - 开始使用express.js,提供动态 HTML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22517764/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com