快递路由问题

Express routing issue

我正在学习 expressjs,我一直卡在如何在页面之间导航:

我做了什么:
1。安装 express,并将常规 html 转换为 jade 格式。
2。在 app.js 中,我添加了以下代码:

app.get('/', function(req, res){
  res.render('views/index.jade', { title: 'index' });
});

app.get('/about', function(req, res){
  res.render('views/portfolio.jade', { title: 'about' });
});
  1. 我存储在视图文件夹中的所有文件和 index.jade 我添加了以下代码:

          a.selected(href='/views/index.jade') TIMELINE
          a(href='/views/portfolio.jade') PORTFOLIO
          a(href='/views/about_me.jade') ABOUT ME
          a(href='/views/store.jade') STORE
    
  2. 当我点击投资组合按钮时,出现以下错误:

您需要 link href route 路径:

a.selected(href='/') TIMELINE
      a(href='/about') PORTFOLIO
      a(href='/about') ABOUT ME
      a(href='/store') STORE

您实际上是在创建路由,使浏览器能够向服务器请求特定路径上的数据。服务器根据该路径向浏览器发送什么由程序员决定。

在您的情况下,您正在内部配置 /about 路由来呈现文件 views/portfolio.jade

因此,您应该链接到您创建的实际路线,而不是像您正在做的那样链接到 .jade 文件:

  a.selected(href='/') TIMELINE
  a(href='/portfolio') PORTFOLIO
  a(href='/about') ABOUT ME
  a(href='/store') STORE

假设您有以下路线:

app.get('/', function(req, res){
  res.render('views/index.jade', { title: 'index' });
});

app.get('/about', function(req, res){
  res.render('views/about_me.jade', { title: 'about' });
});

app.get('/store', function(req, res){
  res.render('views/store.jade', { title: 'store' });
});

app.get('/portfolio', function(req, res){
  res.render('views/portfolio.jade', { title: 'portfolio' });
});