我正在尝试创建一个文件夹视图/圆圈,我将能够在其中渲染数组,但是当我执行 localhost:3001/views/circle 时没有加载任何内容,而是在标题上收到错误。
//-------I added this part in the code as you can see bellow this code-------
//const path = require("path");
//app.set("views", path.join(__dirname, "views"));
//app.set("view engine", "ejs");
//---------------------------------------------------------------------------
const express = require('express')
const path = require("path");
const cors = require('cors')
const app = express()
// view engine setup
app.set("views", path.join(__dirname, "views"));
app.set("view engine", "ejs");
app.use(express.static('public'))
app.use(cors())
const circles = [
{
id: 1,
name: 'Twitter',
image: 'img/twitter.jpg',
color: '#aa2b31',
size: 3
},
{
id: 2,
name: 'Facebook',
image: 'img/facebook.jpg',
color: '#63e184',
size: 1
},
{
id: 3,
name: 'Skype',
image: 'img/skype.png',
color: '#033d49',
size: 2
},
]
app.get('/', (req, res) => {
const help = `
`
res.send(help)
})
app.get('/circles', (req, res) => {
res.render(circles)
})
app.listen(3001, () => {
console.log('Server listening on port 3001')
})
module.exports = app;
在这种特殊情况下,这可能没有任何帮助,但可能对搜索此错误的人有帮助。我得到这个是因为我以错误的顺序放置了路线。我的/:id
路径在它到达应该到达的地方之前捕获了 post 请求。
将set
替换为use
:
从
app.set("views", path.join(__dirname, "views"));
自
app.use("views", path.join(__dirname, "views"));