我似乎无法弄清文件夹结构,它说系统找不到我的文件?

时间:2018-08-14 15:01:30

标签: javascript node.js express aurelia

似乎无法弄清楚我的文件结构可能是什么问题。我正在使用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);
    });

This is my folder structure:

1 个答案:

答案 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,...,也应将其包括在内。