Я пытаюсь настроить Consolidate с узлом (express v3.1.0), чтобы использовать Swig. Я получаю ошибкуNode.JS Consolidate and Swig
Error: Cannot find module 'swig' at Function.Module._resolveFilename (module.js:338:15) at Function.Module._load (module.js:280:25) at Module.require (module.js:362:17) at require (module.js:378:17) at Function.exports.swig.render (/home/jamie/node_modules/consolidate/lib/consolidate.js:237:50) at /home/jamie/node_modules/consolidate/lib/consolidate.js:144:25 at /home/jamie/node_modules/consolidate/lib/consolidate.js:97:5 at fs.readFile (fs.js:176:14) at Object.oncomplete (fs.js:297:15)
В верхней части, я поставил его, как этот
var express = require('express');
var cons = require('consolidate');
// assign the swig engine to .html files
console.log(cons.swig);
app.engine('html', cons.swig);
// set .html as the default extension
app.set('view engine', 'html');
app.set('views', __dirname + '/views');
то, чтобы мой запрос, как это:
app.get('/', function(req, res){
res.render('home', {
title: "home"
});
});
У меня есть шаблон, дом .html, в корневой директории/представлениях
Мой корневой каталог - это/home/jamie/hello-world. Что я здесь делаю неправильно?
Редактировать Кстати, console.log (cons.swig) действительно что-то возвращает.
{ [Function] render: [Function] }
Так его определенно там
Это то, чего мне не хватало. Я установил свинг, просто не добавил в package.json. Спасибо что подметил это!! – Jameo
@ Jameo Glad Я мог бы помочь. –