【问题标题】:Node.js loading external stylesheets from Jade, inconsistent pathNode.js 从 Jade 加载外部样式表,路径不一致
【发布时间】:2014-02-13 07:21:29
【问题描述】:

我正在使用 Jade 模板引擎开发一个 nodejs 应用程序。

在我的 main("/") 布局中,我有以下代码在我的公共路径中加载外部 CSS。

link(rel='stylesheet', href='/stylesheets/styles.css')
...

要加载多行外部 javascript 和 css 文件。

但是,当我必须从我的 /users/profile 翡翠模板加载它时,链接已损坏。

上面写着

GET http://localhost:3000/users/javascripts/underscore.js 404 (Not Found) 

有没有办法让一组链接适用于我的所有 Jade 模板,这样我就不必每次都手动重新定义它们?

提前致谢, 丹尼斯

【问题讨论】:

  • 你的服务器代码是什么样的?
  • 没有服务器代码很难说,但可能你想看看像将css路径作为json值传递给你的模板渲染函数并根据你的路由路径动态设置它的预渲染每次实例化路由时都带有一个小包装函数或其他东西。

标签: javascript css node.js path pug


【解决方案1】:

如果您使用的是express,请这样做:

app.use(express.static(__dirname + '/public'));

link(rel='stylesheet', href='/stylesheets/styles.css') 这将发出以下 http 请求:GET http://localhost:3000/stylesheets/styles.css 并且 express 将在目录中查找文件:~/public/stylesheets/styles.css

【讨论】:

  • 非常感谢。终于奏效了。节省了我很多时间
猜你喜欢
  • 2014-06-17
  • 1970-01-01
  • 2012-05-29
  • 1970-01-01
  • 2013-01-29
  • 2018-12-19
  • 1970-01-01
  • 1970-01-01
  • 2012-07-17
相关资源
最近更新 更多