似乎无法弄清楚我的文件结构可能是什么问题。我正在使用Aurelia作为服务器的前端和节点。我进行了一次连接,修复了一些问题,但是现在出现了此错误:
Error: (SystemJS) Error: XHR error (404 Not Found) loading http://localhost:3000/src/main.js
Error loading http://localhost:3000/src/main.js
这是我的server.js文件:
var express = require('express'),
app = express(),
engines = require('consolidate'),
MongoClient = require('mongodb').MongoClient,
assert = require('assert'),
bodyParser = require('body-parser');
app.engine('html', engines.nunjucks);
app.set('view engine', 'html');
app.set('views', __dirname + '/views');
app.use(bodyParser.urlencoded({ useNewUrlParser: true }));
app.use('/scripts', express.static(require('path').join(__dirname, 'scripts')));
function errorHandler(err, req, res, next) {
console.log(err.message);
console.log(err.stack);
res.status(500).render('error_template', {err: err});
}
MongoClient.connect('mongodb://localhost:27017/', function(err, client) {
assert.equal(null, err);
console.log('MongoDB connected!')
var db = client.db('todos');
app.get('/', function(req, res) {
res.render('index', {});
});
app.use(errorHandler);
});
var server = app.listen(3000, function() {
var port = server.address().port;
console.log("Express server listening on port %s.", port);
});
答案 0 :(得分:1)
app.use('/scripts', express.static(require('path').join(__dirname, 'scripts')));
此行代码将获取本地文件夹,并使其可通过Express服务器使用。您需要对src
文件夹做同样的事情
其中之一:
app.use('/src', express.static(require('path').join(__dirname, 'src')));
或:
app.use(express.static(require('path').join(__dirname, 'src')));
第一个参数允许您命名将用作的目录,通常是相同的。
即使我未在评论中加入require('path').join(__dirname,...
,也应将其包括在内。