Как добавить nunjucks-date-filter?
Я не могу понять, где я должен поместить весь этот код, https://github.com/e-picas/nunjucks-date-filter меня есть эта структура введите описание изображения здесь
это мой шаблон
<div class="container">
<div class="row">
<div class="col-5">
{% for date, block in block | groupby("date") %}
<div class="date">{{ date}}</div>
{% for name, block in block | groupby("name") %}
<div class="about">{{ name }}</div>
{% endfor %}
{% for id, block in block | groupby("id") %}
<div class="id">{{ id }}</div>
{% endfor %}
{% for blocks in block %}
<img onError="this.src='/img/no-photo.png'" src="{{blocks.image}}" alt="">
{% endfor %}
{% endfor %}
</div>
</div>
</div>
в данный момент у меня есть формат даты из файла Json, такой как dd-mm-yyyy, хочу изменить его с помощью фильтра на D-MMM.
0 ответов
Я был в похожей ситуации. Nunjucks-дата-фильтр ридй рекомендую использовать API Nunjucks окружающей среды, чтобы добавить фильтры. Но я обнаружил, что это не работает, поскольку объект env никогда не применялся к экземпляру Nunjucks.
Вот как я это обошел, если вы используете экспресс:
// main.js
const app = express();
const nunjucks = require('nunjucks');
const dateFilter = require('nunjucks-date-filter');
function setUpNunjucks(expressApp) {
let env = nunjucks.configure('views', {
autoescape: true,
express: app
});
// note that 'date' is the function name you'll use in the template. As shown in nunjucks-date-filter's readme
env.addFilter('date', dateFilter);
}
setUpNunjucks();
Затем в вашем шаблоне просто определите желаемый формат даты:
{% for date, block in block %}
<div class="date">{{ date | date("D MMM") }}</div>
{% endfor %}