我正在尝试通过遵循此guide来建立基本的均值堆栈,但是客户端似乎并没有呈现应用程序,而是主体包含了
<body>
<app-root></app-root>
</body>
文件结构与空白角度 cli项目完全相同,除了添加了两个额外的文件。
PLUS:npm install --save ejs cors express body-parser
routes / index.js
var express = require('express');
var router = express.Router();
router.get('/', function(req, res, next) {
res.render('index.html');
});
module.exports = router;
server.js
var express = require('express');
var path = require('path');
var bodyParser = require('body-parser');
var cors = require('cors')
var index = require('./routes/index');
// app
var app = express();
// cors
app.use(cors());
// views
app.set('views', path.join(__dirname, 'src'));
// engine
app.set('view enginer', 'ejs');
app.engine('html', require('ejs').renderFile);
// angular dist
app.use(express.static(__dirname + '/dist'));
// body bodyParser
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({extended: false}));
// route
app.use('/', index);
// Initialize the app.
var server = app.listen(process.env.PORT || 3000, function () {
var port = server.address().port;
console.log("App now running on port", port);
});
我运行了ng build
和node server.js
,但是在浏览器中出现了空白的白页。
也许是一个未知的重大变化,因为该指南使用的是angular2(我使用的是Angle 6)。
答案 0 :(得分:0)
由于您的index.html
不是直接位于dist
文件夹中(而是出于某种原因,它位于子文件夹中),因此请尝试将app.use(express.static(__dirname + '/dist'));
更改为app.use(express.static(__dirname + '/dist/<your project name here>'));