似乎无法弄清楚我的文件结构可能存在什么问题。我使用 Aurelia 作为服务器的前端和 Node 。我进行了一次连接,解决了一些问题,但现在我收到此错误:
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);
});
最佳答案
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,...
,包含它也是一个很好的做法。
关于javascript - 我似乎无法弄清楚文件夹结构,它说系统找不到我的文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51844471/