Node.js +不使用 Jade 的快递

发布于 2024-12-06 02:02:44 字数 41 浏览 1 评论 0原文

是否可以使用快速而不任何模板引擎?

Is it possible to use express without any template engine?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(6

夕嗳→ 2024-12-13 02:02:44

是的,

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

应该可以工作

Yes,

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

should just work

南巷近海 2024-12-13 02:02:44

更新

有些人可能会担心sendFile仅提供客户端侧面缓存。有多种方法可以进行服务器端缓存并与OP的问题保持一致,也可以使用 send

res.send(cache.get(key));

下面是 3 年前的原始答案:

对于任何寻找 PavingWays 替代答案的人来说,也可以这样做:

app.get('/', function(req, res) {
  res.sendFile('path/to/index.html');
});

无需编写:

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

UPDATED

Some might have concerns that sendFile only provides client side caching. There are various ways to have server side caching and keeping inline with the OP's question one can send back just text too with send:

res.send(cache.get(key));

Below was the original answer from 3+ years ago:

For anyone looking for an alternative answer to PavingWays, one can also do:

app.get('/', function(req, res) {
  res.sendFile('path/to/index.html');
});

With no need to write:

app.use(express['static'](__dirname + '/public'));
多情癖 2024-12-13 02:02:44

对于任何需要在新的 Express 项目中立即使用常规 HTML 而不使用 jade 的人,您可以这样做。

index.html 添加到视图文件夹中。

app.js 中更改

app.get('/', routes.index);

app.get('/', function(req, res) {
  res.sendfile("views/index.html");
});

UPDATE

使用此代替。请参阅下面的评论部分以获取解释。

app.get('/', function(req, res) {
  res.sendFile(__dirname + "/views/index.html"); 
});

For anyone having the need to immediately use regular HTML without jade in a new express project, you can do this.

Add a index.html to the views folder.

In app.js change

app.get('/', routes.index);

to

app.get('/', function(req, res) {
  res.sendfile("views/index.html");
});

UPDATE

Use this instead. See comment section below for explanation.

app.get('/', function(req, res) {
  res.sendFile(__dirname + "/views/index.html"); 
});
吾性傲以野 2024-12-13 02:02:44

您可以使用 Express 自动提供静态文件,如下所示:

// define static files somewhere on top
app.use(express['static'](__dirname + '/your_subdir_with_html_files'));

实际上这应该是express.static(...),但传递上面版本的 JSLint 也可以;)

然后启动服务器并在端口 1337 上侦听:

// app listens on this port
app.listen(1337);

Express 现在提供静态文件在 /your_subdir_with_html_files 中自动像这样:

http://localhost:1337/index.html

http://localhost:1337/otherpage.html

You can serve static files automatically with Express like this:

// define static files somewhere on top
app.use(express['static'](__dirname + '/your_subdir_with_html_files'));

Actually this should be express.static(...) but to pass JSLint above version works too ;)

Then you start the server and listen e.g. on port 1337:

// app listens on this port
app.listen(1337);

Express now serves static files in /your_subdir_with_html_files automatically like this:

http://localhost:1337/index.html

http://localhost:1337/otherpage.html

北凤男飞 2024-12-13 02:02:44

这都已经过时了 - 3x、4x 的正确答案是

这里的第二个答案:
渲染基本 HTML 视图?

This is all out of date - correct answer for 3x, 4x is

The second answer here:
Render basic HTML view?

殤城〤 2024-12-13 02:02:44

在你的主文件中:

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

你的index.jade 文件应该只包含:

include index.html

其中index.html 是你制作的原始HTML。

In your main file:

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

Your index.jade file should only contain:

include index.html

where index.html is the raw HTML you made.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文