无法在index.html中加载静态文件

时间:2017-01-10 07:16:22

标签: javascript html node.js express

我尝试使用node,express和angular2设置简单的应用程序。问题是,当我运行localhost时,在浏览器中打开它,我会收到错误:" Uncaught SyntaxError:Unexpected token< "。我认为这是因为我的节点/快速文件中的路径不正确或代码错误。 例如,当我在源代码中尝试打开库文件时,我总是得到index.html代码: enter image description here

这是文件夹结构: folder structure 下面我将显示完整的代码

index.js

>>> b2 = ast.literal_eval(r)
>>> type(b2)
<class 'bytes'>
>>> b == b2
True

router.js

'use strict'

// require dependencies
let express = require('express');
let bodyParser = require('body-parser');
let path = require('path');

// require our custom dependencies
let router = require('./router');

let app = express();

const PORT = process.env.PORT || 4000;

// get the data from a POST
app.use(bodyParser.urlencoded({ extended: true }));
app.use(bodyParser.json());

//share folder with static content
app.use(express.static(__dirname + '../frontend/build'));
app.use('/', router);

app.listen(PORT, function() {
    console.log('Example app listening on port', PORT);
});

的index.html

let express = require('express');
let router = express.Router();
let path = require('path');
let User = require('./models/user');

router.use(function(req, res, next) {
    console.log('request to', req.path);
    next();
});

router.route('/users')
.get(function(req, res) {
        User.find(function(err, users) {
            if (err) {
                res.send(err);
            }
            res.json(users);
        });
    });

    router.get('*', function (req, res) {
        res.status(200).sendFile(path.resolve('frontend/build/index.html'));
    })

module.exports = router;

谢谢!

更新

我从

中更改了 router.js
<!DOCTYPE html>
<html>

<head>
    <meta charset="UTF-8">
    <title>My Angular 2 App!</title>
    <base href="/">

    <!-- load the dependencies -->
    <script src="./assets/libs/core-js/client/shim.min.js"></script>
    <script src="./assets/libs/zone.js/dist/zone.js"></script>
    <script src="./assets/libs/reflect-metadata/Reflect.js"></script>
    <script src="./assets/libs/systemjs/dist/system.src.js"></script>
    <script src="./systemjs.config.js"></script>
    <script>
    System.import('app').catch(function(err) {
        console.error(err);
    });
    </script>
</head>

<body>
    <h1>Hello</h1>
</body>

</html>

到这个

router.get('*', function (req, res) {
            res.status(200).sendFile(path.resolve('frontend/build/index.html'));
        });

现在我有404错误,找不到文件

0 个答案:

没有答案
相关问题