Я использую Node.JS и Nunjuck для создания своих шаблонов. Когда я что-то меняю в своих файлах .njk, мне приходится останавливать сервер Node.JS и запускать его снова, чтобы изменения отразились на моем браузере (localhost: 80).
Вот как выглядит мой app.js (сервер):
var app = require("express")(),
nunjucks = require('nunjucks'),
server = require("http").createServer(app),
io = require("socket.io").listen(server)
path = require("path");
nunjucks.configure('views',
{
autoescape: true,
express: app
});
app.get("/", function (req, res)
{
res.render(__dirname + "/views/index.njk");
});
server.listen(80);
И в моем index.njk у меня есть две строки:
{% set x = 5 %}
и {{ x }}
.
Например, когда я меняю значение с 5 на 7, мне нужно перезапустить свой сервер node.JS, а затем обновить страницу, чтобы получить 7. Если я просто обновлю страницу без перезапуска сервера, я все равно получу 5 .
Вы используете nodemon? Если нет, сделайте это:
npm i -D nodemon
чем в вашем package.json, сделайте следующее:
"scripts": {
"start": "nodemon LOCATION/OF/index.js"
}
теперь вам нужно запустить npm rum start
, чтобы собрать свой проект.
На "МЕСТОПОЛОЖЕНИЕ / OF / index.js" должно быть что-то вроде: nodemon src / index.js
Nodemon https://www.npmjs.com/package/nodemon
Проблема в том, что nodemon не отслеживает изменения в файлах .njk.
используйте
nodemon
или любой инструмент, который будет следить за изменениями в любом из ваших файлов проекта, а затем автоматически перезапустить сервер за вас.