У меня есть файл index.js и файл list.ejs, который я сказал, чтобы файл экспресса включал:
index.js :
const express = require("express");
const app = express();
app.set("view engine", "ejs"); //Express Template Engine = embedded js
app.set("views", __dirname + "\\views");
let varToUseInEJS = 5;
app.get("/", (req, res) => {
console.log("Path of Request: " + req.path);
res.render("list");
});
app.listen(8080, "localhost", 1, () => {
console.log("Example app listening on: 127.0.0.1:8080");
})
list.ejs:
<!DOCTYPE html>
<html>
<body>
<table>
<tr>
<th>Number</th>
</tr>
<% for(let i = 1; i < varToUseInEJS; i++) { %>
<tr>
<td>
<%= i %>
</td>
</tr>
<% } %>
</table>
</body>
</html>
, когда я изменяю "varToUseInEJS", например, на 5, он работает и показывает таблицу с заголовком от 1 до 5 +, но в этом случае отладчик node.js дает мнеследующая ошибка:
>> 9| <% for(let i = 1; i < varToUseInEJS; i++) { %>
10| <tr>
11| <td>
12| <%= i %>
varToUseInEJS is not defined
есть ли способ сделать все переменные файлов .js автоматически видимыми для файлов ejs?
Заранее благодарим за любую помощь.