我正在制作一个 NodeJS 应用程序,我有一个 div 元素,在外部 CSS 文件中设置了一个背景图像。CSS 文件本身工作得很好,没有问题。此外,当我在没有 Node 的情况下加载 HTML 时,背景图像显示得很好。
CSS:
#schoolInfo {
display: block;
background-image: url('slide1pic.jpg');
background-repeat: no-repeat;
width: 100%;
height: 100%;
background-size: cover;
}
应用程序.js:
var express = require('express');
var app = express();
var serv = require('http').Server(app);
var io = require('socket.io')(serv);
var path = require('path');
var bodyParser = require('body-parser');
app.use(bodyParser.urlencoded({extended:false}));
app.use(bodyParser.json());
app.use(express.static('client/home'));
app.post('/createSchool', function(req, res) {
app.use(express.static('client/school'));
res.sendFile(path.join(__dirname, '/client/school/index.html'));
io.emit('updateSchool', response);
});
serv.listen(3000);
console.log("Server started on localhost://3000");
很明显,我使用的是绝对 URL,所以我不知道为什么 express 找不到它。我在命令提示符(这是我运行服务器的地方)或浏览器的控制台中没有收到任何错误。
我需要在我的 app.js 中添加一些东西吗?任何帮助将不胜感激。
您在提供文件的 url 中缺少路由:
app.use('/', express.static('client/home'));
该路径“/”是从你开始你的节点工艺相对的。
如果你的主目录中有一个 index.html 文件,那么你可以在那里有一个图像文件夹,你的 express.static() 看起来像这样:
app.use('/images', express.static('client/home'));
在您的html文件中,您只需要输入:
<img src="images/file.png" />
然后你只需要在以下位置启动你的节点进程:
client\home > node server.js
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句