Express模板引擎配置报错:TypeError: app.set is not a function
解决Express中
app.set is not a function报错 问题根源
代码中仅将Express模块本身赋值给了app,而非创建Express应用实例:const app= express;。app.set是Express应用实例的专属方法,直接调用模块本身自然会触发类型错误。
修复方案
将const app= express;修改为const app = express();,通过调用express()生成具备完整方法的应用实例。
修正后的完整代码
const express=require('express') // 调用express()创建应用实例 const app= express(); const port = 5000; // 设置模板引擎 app.set('view engine','ejs') // 路由配置 app.get('',(req,res)=>{ res.render('index') }) app.get('/register',(req,res)=>{ // 修正原代码中"resgiter"的拼写错误 res.render('register') }) app.listen(port,() => console.info(`App listening on port:${port}`) )
额外提示:原代码中路由和模板名称的resgiter是拼写错误,建议修正为register,避免后续出现模板文件找不到的问题。
内容的提问来源于stack exchange,提问作者Raja Hammad Ahsan 19 Arid 953
相关产品推荐
相关产品推荐

