我的文件夹结构如下:
public
css
html
main
pllanet.html
server
server.js
src
img
js
public
文件夹包含所有HTML和CSS代码,而src
文件夹包含img和js文件。在server.js中,我使用Express指示静态文件目录如下:
app.use(express.static(path.join(__dirname, "../public")));
app.use(express.static(path.join(__dirname, "../src")));
当我打开pllanet.html时,由于图像未加载,因此应用程序似乎没有选择第二个目录。 在pllanet.html文件中,我具有如下所示的CSS路由:
<link rel="stylesheet" href="../../css/main/pllanet.css">
<link rel="stylesheet" href="../../css/main/home.css">
有人可以帮我吗?我真的被困住了。另外,我的文件夹结构是一种好习惯吗?
非常感谢您的帮助人员。
答案 0 :(得分:0)
您可以实现virtual path
为express.static服务的文件创建虚拟路径前缀(该路径在文件系统中实际上不存在)
app.use('/static', express.static('public'))
在您的代码中,您可以:
app.use('/public', express.static(path.join(__dirname, "../public")));
app.use('/resource', express.static(path.join(__dirname, "../src")));
// and link in html like
<link rel="stylesheet" href="/public/css/main/pllanet.css">
// img or js
<link rel="stylesheet" href="/resource/img/someimage.jpg">