Не могу получить страницу ejs для рендеринга - PullRequest
1 голос
/ 29 сентября 2019

Я хочу, чтобы моя страница news.ejs отображалась при нажатии на ее ссылку, но я получаю сообщение об ошибке "Cannot GET /news.ejs"

const express = require('express')
const path = require('path')
const PORT = process.env.PORT || 5000

express()
  .use(express.static(path.join(__dirname, 'public')))
  .set('views', path.join(__dirname, 'views'))
  .set('view engine', 'ejs')
  .get('/', (req, res) => res.render('pages/index'))
  .get('/news', (req, res) => res.render('pages/news'))
  .listen(PORT, () => console.log(`Listening on ${ PORT }`))

Ответы [ 2 ]

2 голосов
/ 29 сентября 2019

У меня есть этот код, и он работает нормально

const express = require('express');
const app = express()
const path = require('path')

const ejs = require('ejs');

app.use(express.static(path.join(__dirname, 'public')))
app.set('views', path.join(__dirname, 'views'))
app.set('view engine', ejs)
app.get('/', (req, res) => res.render('privacypolicy.ejs'))
app.get('/news', (req, res) => res.render('rulesnregulations.ejs'))

//app.use('/', indexRouter)
const PORT = 5000;
app.listen(PORT, () => console.log('it started on 5000'))

privacypolicy.ejs & rulesnregulations.ejs эти два файла находятся в views folder

0 голосов
/ 29 сентября 2019

Убедитесь, что вы ссылаетесь на /news, а не /news.ejs. Если вы хотите, чтобы /news.ejs был доступен, вам придется изменить путь, который вы регистрируете.

...