gpt4 book ai didi

javascript - 链接在使用 node.js 和 ejs 的多页网站中不起作用

转载 作者:行者123 更新时间:2023-12-03 07:33:24 24 4
gpt4 key购买 nike

我在使用 node.js/ejs 中的多页面网站时遇到问题。我认为这是路线问题,但我相信我的路线设置正确。我的索引页面呈现良好,但当我尝试点击页面上的链接时,出现“无法获取/”错误。

我的相关前端代码:

<nav id="main_nav">
<a class="button_horizontal" href="index.ejs">HOME</a>
<a class="button_horizontal" href="about.ejs">ABOUT</a>
<a class="button_horizontal" href="portfolio.ejs">PORTFOLIO</a>
<a class="button_horizontal" href="events.ejs">EVENTS</a>
</nav>

我的相关node.js代码:

app.set('views', __dirname + '/views');
app.set('view engine', 'ejs');
app.use(favicon(path.join(__dirname, 'public/images', 'favicon.ico')));
app.use(logger('dev'));
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: false }));
app.use(cookieParser());
app.use(express.static(path.join(__dirname, 'public')));
app.set('view options', __dirname + '/views/pages/layout');
app.set('images', __dirname + '/public/images');
app.use('/', routes);
app.use('/users', users);

// Create server
var server = http.createServer(app).listen(4000,function(){
console.log("We have started our server on port 4000");
});

// Load website
app.get('/', function(req, res) {
res.render('index', { });
});

我的文件结构:

views/
index.ejs
about.ejs
portfolio.ejs
events.ejs
public/
css/
images/
js/
routes/
index.js
users.js

如果有人能发现我所缺少的内容,我将非常感激,因为我似乎找不到任何使用网站多个页面的教程!

最佳答案

它不会工作,因为在 <a class="button_horizontal" href="index.ejs">HOME</a>您指向index.ejs页面,而不是 Node.js 应用程序的任何路由。

相反,你应该有

<a class="button_horizontal" href="/">HOME</a>      
<a class="button_horizontal" href="/about">ABOUT</a>
<a class="button_horizontal" href="/portfolio">PORTFOLIO</a>
<a class="button_horizontal" href="/events">EVENTS</a>

app.js

app.get('/', function(req, res) {
res.render('index', { });
});
app.get('/about', function(req, res) {
res.render('about', { });
});
app.get('/portfolio', function(req, res) {
res.render('portfolio', { });
});
app.get('/events', function(req, res) {
res.render('events', { });
});

如果您有任何疑问,请告诉我。

关于javascript - 链接在使用 node.js 和 ejs 的多页网站中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35721272/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com