Лучший способ включить верхний / нижний колонтитул с узлом / экспресс?

В случае, когда мы используем fs.write вместо fs.render и хотим включить в наш вывод верхний и нижний колонтитулы. Я попытался с помощью include, и это дает ошибку.

Строки, подобные этой, не работают -> const head = require('../views/partials/production-header.html');

async function readInFile(theFile) {
  return await fs.readFile(path + theFile)
}

router.get('/:qry', function(req, res) {

  readInFile('/views/partials/production-header.html').then(data => {
    let head = data.toString()
    readInFile('/views/partials/production-footer.html').then(data => {
      let foot = data.toString()


        display_page(head, foot)
      })
    })
 })

 function display_page(head,foot,filter) {
    res.writeHead(200, {'Content-Type': 'text/html'});
    res.write(head);
    res.write(q);
    res.write(foot);
    res.end();
 }

все вышеперечисленное работает, но вряд ли это лучший способ

1 ответ

Решение

Для этого есть множество шаблонных движков, и они действительно просты в использовании, например, pug, и вы можете найти руководство по интеграции с express здесь

Другие вопросы по тегам