首页 > 解决方案 > router .use() 需要一个中间件函数但得到一个字符串

问题描述

当我添加这个时,我正在使用 EJS 进行模板

app.use("view engine","ejs")

在我的代码中我得到错误。

router .use() 需要一个中间件函数但得到一个字符串

其余代码:

const express = require('express');
const bodyParser = require('body-parser');
const port = 3000;


const app=express();
app.use("view engine","ejs");



app.get('/', function(req, res){
    var today = new Date();
    var currentDay = today.getDay();
    var day ="";


    if(currentDay === 6 || currentDay === 0){
        day ="weekend";
        
    }else{
        day = "weekday";
        
    }
     res.render("list",{kindOfDay:day});
});

app.listen(port, function(){
    console.log('The server has started');
});

标签: ejs

解决方案


查看使用模板引擎的文档

app.set('view engine', 'pug')

use用于添加中间件,字符串不是中间件,因此出现错误消息。

您需要使用set来设置设置。


推荐阅读