javascript - 为什么我的具有多个路径的 express router.get URL 只呈现文本?

标签 javascript node.js express pug

我目前正在尝试使用 Pug(以前称为 Jade)和 Express 设置密码重置流程。

出于某种原因,包括附加了多个路径的 URL 在内的 GET 请求将使我的哈巴狗 View 文件仅包含文本。没有加载图像或样式。

例如:

app.get('/example', (req, res) => {
    res.render('test')
})

将完美呈现带有样式和图像的测试文件。然而:

app.get('/example/test', (req, res) => {
    res.render('test')
})

将仅使用文本呈现测试文件。缺少图像和样式。

关于可能导致此问题的原因有什么想法吗?

最佳答案

  1. 在你的 server.js 中添加 app.use(express.static(__dirname+"/public"));
  2. 在您的 workspace 上创建一个名为 public 的新文件夹,您的 server.js 所在的位置。
  3. 现在在 public 中创建 stylesimages 文件夹,并将您的 css 文件和图像文件放入每个文件夹中。
  4. 例如,将 test.html 上的 css 路径更改为 /styles/test.css。你现在应该让它工作了。

express 中定义的静态方法将寻找 public 文件夹作为绝对根路径,现在无论您获得多少层路由调用,您都可以访问您的stylesimages 文件夹,无需回溯 css/images 文件的相对路径。

关于javascript - 为什么我的具有多个路径的 express router.get URL 只呈现文本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46820158/

相关文章:

javascript - 隐藏网页 URL 直至登录成功

javascript - node.js 和 jquery web 的 UI

mysql - Sequelize 错误: defineCall not defined in Index. js

node.js - Sailsjs 模块

javascript - 如何从nodeJS中的子文件中获取与父文件夹相同的目录中的文件的绝对路径

Express 应用程序中的 CSS 字体面部路径不起作用

javascript - 如何在 React Native 中裁剪图像,使其看起来像圆形而不是矩形?

javascript - amcharts 中 X 轴的自定义标签值

javascript - 动态改变元素的宽度和高度?

windows - 并行运行多个 node-wekit 实例