解决 – NodeJS – 试图呈现index.ejs文件,但仍然只是服务器index.html是在我的公用文件夹

下面的代码仍然服务于public文件夹中的index.html页面,但我想呈现index.ejs 。 我跟着video的例子,所以我不知道他为什么能够呈现ejs文件,而我仍然只看到index.html文件。

我使用的video示例似乎是一样的。 我的package.json文件有"main": "app.js"

以下是video示例链接,代码如下: https : //youtu.be/gnsO8-xJ8rs?t = 28m12s

 //View Engine app.set('view engine', 'ejs'); app.set('views', path.join(__dirname, 'views')); //Body Parser Middleware app.use(bodyParser.json()); app.use(bodyParser.urlencoded({extended : false})); //Set Static path app.use(express.static(path.join(__dirname, 'public'))); //Routes app.get('/', (req, res) => {//homepage represented by the single slash res.render('index'); }); app.listen(3000, () => { console.log('server started on port 3000...'); }); 

我注意到,如果我注释掉

 //Routes app.get('/', (req, res) => {//homepage represented by the single slash res.render('index'); }); 

然后ejs文件被渲染和服务。

任何意见,将不胜感激!

请注意,默认情况下,EJS会查看视图 ”文件夹

=> app.set('views',path.join(__ dirname,'views'));

因为你已经指定文件path来查看它视图更改这到您的公共文件夹,它将启动并运行。