我是新角度用户,尝试使用angular / cli建立新角度项目。我按照以下步骤设置了快速服务器,并将angular作为前端。
已安装angular / cli;然后 ng new testApp; ng build; 这样就创建了一个dist文件夹,例如dist> testApp>和所有文件(index,html,main.js ...等),
并且我已经安装了express和body-parser。现在在我的server.js中,我有以下代码。
const express = require('express');
const bodyParser = require('body-parser');
const path = require('path');
const http = require('http');
const app = express();
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({extended : false}));
app.use(express.static(path.join(__dirname, 'dist')));
app.get('*', (req, res) => {
res.sendFile(path.join(__dirname, 'dist/testApp/index.html'));
});
const port = process.env.port || '3000';
app.set('port', port);
const server = http.createServer(app);
server.listen(port, () => console.log(`listening on port : ${port}`));
现在,当我启动服务器并在浏览器上尝试“ http://localhost:3000/”时,我在控制台中看到错误,在诸如main.js,polyfills.js的所有.js文件中都说出意外的令牌,因此当我查看“源”选项卡时我什至看到js文件中都包含相同的index.html内容。
任何人都可以告诉我我在想什么或做错了什么。请。 谢谢。
答案 0 :(得分:0)
只需如下重写您的server.js文件。
const express = require('express');
const bodyParser = require('body-parser');
const path = require('path');
const http = require('http');
const app = express();
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({extended : false}));
app.use('/', express.static(path.join(__dirname, 'dist', 'testApp')));
const port = process.env.port || '3000';
app.set('port', port);
const server = http.createServer(app);
server.listen(port, () => console.log(`listening on port : ${port}`));
这可以解决您的问题。