gpt4 book ai didi

node.js - 错误 : callback function required

转载 作者:可可西里 更新时间:2023-11-01 10:21:47 24 4
gpt4 key购买 nike

我正在尝试使用 node、express 和 mongodb 将对象呈现为 html。当我尝试下面的代码时

var express=require('express'),
app=express(),
engines = require('consolidate'),
nunjucks = require('nunjucks');

app.set('view engine', 'html');
app.engine('html', engines.nunjucks);
app.set('views', __dirname + '/views');

app.get('/',function(req,res){
res.render('index',{'name':'Hello'});
})

app.use(function(req,res){
res.sendStatus(404);
})

var server = app.listen(3000,function(){
var port=server.address().port;
console.log('Express server listening on port', port);
})

我收到如下所示的回调函数错误

D:\Wiki>node app.js
D:\Wiki\node_modules\express\lib\application.js:174
if ('function' != typeof fn) throw new Error('callback function required');
^

Error: callback function required
at Function.app.engine (D:\Wiki\node_modules\express\lib\application.js:174:
38)
at Object.<anonymous> (D:\Wiki\app.js:7:5)
at Module._compile (module.js:409:26)
at Object.Module._extensions..js (module.js:416:10)
at Module.load (module.js:343:32)
at Function.Module._load (module.js:300:12)
at Function.Module.runMain (module.js:441:10)
at startup (node.js:139:18)
at node.js:968:3

有人可以帮助我如何使用 nunjucks 呈现 html 吗?提前致谢

最佳答案

正如您在日志中看到的那样 - 第 7 行 app.engine('html', engines.nunjucks); 出错。所以问题就在这里。

添加新文件,例如templateEngine.js

var nunjucks  = require('nunjucks');

module.exports = function (app) {
// store environment env
var env = nunjucks.configure(['views/', 'views2/'], {
autoescape: true,
express : app
});

// This is filter example. You can use it by {{varname | myFilter}} in template
env.addFilter('myFilter', function(text) {
return text.toUpperCase();
});
}

在主 js 中调用 require('templateEngine')(app);

关于node.js - 错误 : callback function required,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38682253/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com