Как получить данные из json файла в pug шаблон

Всем доброго времени суток. У меня есть файл dataset.json и файл index.pug В файле у меня есть переменная -let data. Как мне получить данные из файла dataset.json в переменную data в файл index.pug, где я буду в дальнейшем через цикл for или другим способом генерировать разметку. Мне не принципиально получить данные именно в переменную data, если есть другие варианты - тоже можно использовать. Еще не совсем понятно какими коммандами мне вызвать сборку в webpack.


Ответы (2 шт):

Автор решения: Streammer

Я сделал так. Создал файлик index.js где я обрабатываю свой json.

var pug = require('pug');
var fn = pug.compileFile('template.pug');
var locals = require('./dataset.json');
console.log(fn({
    name: locals
}));
console.log(locals)

В консоль выводится мой обработанный json файл. Файл template.pug выглядит так

p #{name}'s Pug source code!

Но тут возникает другой вопрос, а как мне сделать так, чтобы когда я вызываю сборку файла template.pug в консоли командой

pug template.pug

у меня перед этим вызвалась обработка моего index.js, где я присваиваю мой json в переменную name?

→ Ссылка
Автор решения: Vasyl Pylypenko

Вот способ с использованием Node.js

const express = require('express');
const app = express();
const pug = require('pug');
const { readFileSync } = require('fs');

const users = JSON.parse(readFileSync('./dataset.json'));
app.use(express.static('/src'));
app.get('/', (req, res) => {
    const html = pug.renderFile('template.pug', { users: users });
    res.send(html);
});

app.listen(3000, () => {
    console.log('Server started on port 3000');
});
→ Ссылка