【问题标题】:NodeJS ejs templates not rendering using templateNodeJS ejs模板不使用模板呈现
【发布时间】:2013-01-03 07:09:14
【问题描述】:

我正在关注 Steven Senderson 关于 NodeJS 的帖子。正如question 中所建议的那样,我已经克服了由于 Express 中的版本更改而导致的破坏代码。现在,当我使用localhost:13253 访问我的index.html 页面时,它正在按原样呈现index.html 的内容。它没有使用layout.html 渲染它。我已经从ejs.jsejs-middleware 跟踪它,也调用了函数,但没有应用布局。服务端代码如下:

var express = require('express'),
app = express(),
api = require("./api/server.js"),
ejsm = require('ejs'),
ejsMiddleware = require('ejs-middleware');

app.use('/api', api);

app.use(ejsMiddleware(__dirname + '/Static', 'html', app));

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

app.listen(process.env.port || 12345);

编辑:-

//INDEX.HTML

this is homepage

//layout.html

<!DOCTYPE html>

<html lang="en">
    <head>
        <meta charset="utf-8" />
        <title>Inventify (alpha)</title>
        <script type="text/jscript" src="/scripts/jquery-1.8.3.min.js"></script>
        <script type="text/javascript" src="/scripts/knockout-2.2.0.js"></script>
        <link rel="stylesheet" href="/Styles/app.css"/>
    </head>
    <body>
        <h1 class="site-title">
            <a href="/">Iventify<span class="version">(alpha)</span></a>
        </h1>
        <div class="main-container">
            <%- body %>
        </div>
    </body>
    <script type="text/javascript">
        alert('from template');
</script>
</html>

【问题讨论】:

  • 您应该发布 index.html 和 layout.html 的示例。从 Express 2.x 到 3.x,布局的处理发生了显着变化。现在由视图引擎来支持它,而不是嵌入到 Express.js 中
  • @HectorCorrea 我已经从布局和索引页面添加了代码
  • 我怀疑您使用的是 Express 3.x,对吧?如果是这样,问题是对布局的支持发生了很大变化。我在这里写过这个问题hectorcorrea.com/blog/using-layouts-with-ejs-in-express-3-x
  • 是的,我使用的是 express 3.x,我一定会查看这篇文章。

标签: node.js express ejs


【解决方案1】:

运行 express 二进制文件以生成裸 express 项目(它会这样做!),

./node_modules/express/bin/express

对于说的部分

app.set('view_engine', 'jade');

将其更改为 ejs。现在它将读取所有带有 .ejs 的文件作为 ejs 模板。

【讨论】:

  • 好吧,我将运行二进制文件。但是,如果您在 github 上看到 Steve 的示例,它也在使用 layout.html 模板文件。他正在使用ejs-middleware 包。
猜你喜欢
  • 2014-04-14
  • 2015-06-18
  • 1970-01-01
  • 2017-07-28
  • 1970-01-01
  • 1970-01-01
  • 2013-02-19
  • 2021-09-24
  • 1970-01-01
相关资源
最近更新 更多