2017-03-07 15 views
1

我有这样的目录结构分航线方面没有得到静态文件ExpressJS

REFERENCE SCREENSHOT

里面users.js我有/登录和/寄存器路由。
所以我可以通过localhost:3000/user/login访问它,但是我的包含css的静态文件没有加载。

如何为所有子路由提供静态文件。

+0

使用内置在中间件功能express.static和指向,其中静态文件是stored.you可以指的目录[链接](HTTPS:/ /expressjs.com/en/starter/static-files.html)例如:app.use(express.static('public')) –

+0

我已经使用过了。 – Vishnudev

+0

你的静态文件存储在哪里? –

回答

0

您的页面位于更深层次,因此您必须添加另一个点。

前:<link rel="stylesheet" href="stylesheets/style.css">

后:<link rel="stylesheet" href="../stylesheets/style.css">

+0

我用它来提供静态文件:app.use(express.static(path.join(__ dirname,'public'))); – Vishnudev

+0

@Vishnudev我说的是,当你在视图中使用这些资源时(html/pug/ejs),你需要改变你的路径。我编辑了我的答案,使其更加清晰。 –

+0

这里的问题是我使用express,并且只有一个主要页面加载CSS。所以当我按照你所说的去解决这个问题的时候,我的/ users/login(Multilevel routes)获得了CSS,但是那些拥有/ home(Single level route)的人并不是 – Vishnudev