Express.js index.js 404 (Not Found)



由于某些原因,它无法加载从我的index.html引用的index.js脚本。server.js、index.html和index.js都位于我的项目文件夹的根目录下。

server.js

var express = require('express'),
    app = express();
app.set("view options", {layout: false});
app.use(express.static(__dirname + '/public'));
app.set('views', __dirname + '/');
app.engine('html', require('ejs').renderFile);
app.set('view engine', 'html');
app.get('/', function (req, res) {
    res.render('index.html');
});
app.listen(4000, function () {
    console.log('Example app listening on port 4000!');
});

index.html

<html>
    </head></head>
    <body>
        <div class="ink-grid vertical-space">
            <div id="content">
                <div class="panel vertical-space">
                    <div id="app"/>
                </div>
            </div>
        </div>
        <script type="text/babel" src="index.js"></script>
    </body>
</html>

您必须提供这些文件。你可以单独做:

app.get('/index.js', function (req, res) {
    res.sendFile('index.js');
});

或者为您想要服务的所有内容创建一个目录(例如www)并使用express.static:

app.use(express.static('www'));

通过查看声明

app.use(express.static(__dirname + '/public'));

您的index.js文件应该位于public目录中。

由于index.jsserver.js在同一目录中,请定义

app.use(express.static(.));

相关内容

最新更新