【问题标题】:Pug template can't find CSSPug 模板找不到 CSS
【发布时间】:2021-04-21 23:31:14
【问题描述】:

我看了看,似乎这个问题通常与拼写错误有关,但是,我已经检查了很多次,但没有看到。控制台说它正在寻找的位置正是它应该在的位置:

html(lang="en")
  head
    link(rel='stylesheet', href='/stylesheets/style.css')
  body
    div#card
      h4 Your Moon Story!
      p#story #{moon_story}

在我的 index.js 中

// express set-up
app.set('view engine', 'pug')
app.set('port', (process.env.PORT || 5000));
app.use(express.static('/public'));
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: true }));
app.use(expressValidator()); // Add this after the bodyParser middlewares!

style.css 是我的文件名,/stylesheets 是它所在的位置。它正在查看localhost:5000/stylesheets/style.css,这正是它应该在的位置。为什么找不到我的 CSS 文件?

编辑:将它移到公用文件夹中,它说它仍然不存在,即使我更新了路径

【问题讨论】:

  • 您必须向我们展示您认为正在为 /stylesheets/style.css 文件提供服务的服务器端 node.js 路由,然后我们才能帮助确定丢失或错误的内容。请记住,node.js 默认情况下不提供任何文件,因此服务器只会获取具有特定路由或包含在由 express.static() 等服务提供的目录中的文件。
  • 这实际上应该是我的答案,我以为我正在这样做,但我没有。我太忙于检查我的拼写检查了。谢谢你! 编辑:nvm 我正在做,我只是乍一看没看到,我用那个信息编辑我的代码
  • 所以,现在的问题是您是否正确地执行express.static()。按照您的配置方式,您服务器上的文件应该位于/public/stylesheets/styles.css。是那里吗?请注意,这是来自顶级目录/public/stylesheets
  • 以前没有,但我将它移到了公用文件夹中,但它不起作用,但我得到的响应错误确实告诉我它正在寻找那里。
  • 您的style.css 文件在您的服务器上到底在哪里?请给我它所在位置的完整文件路径。

标签: node.js pug


【解决方案1】:

如果您将style.css 文件放在 .pug 文件的同一文件夹中,这应该可以:

doctype html
html(lang='en')
  head
    title Example
    style
      // Custom styles for this template
      include ../css/style.css

您可以使用../导航到其他文件夹

【讨论】:

    【解决方案2】:

    在使用pug的时候记得使用缩进,因为不正确的缩进,我浪费了2个小时。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-05-19
      • 1970-01-01
      • 2021-09-13
      • 1970-01-01
      • 1970-01-01
      • 2015-04-08
      相关资源
      最近更新 更多