Я слежу за сообщениями Стивена Сендерсона о NodeJS. Я преодолел неработающий код из-за изменения версии в Express, как было предложено в этом вопросе. Теперь, когда я получаю доступ к своей странице index.html
, используя localhost:13253
, она отображает содержимое index.html
как есть. Он не отображает его с помощью layout.html
. Я проследил это от ejs.js
и ejs-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>