我有一个NodeJS应用程序和一个Angular 6作为前端。
该项目如下:
-> Node Project
---> src
---> Client_App (Anuglar)
要运行该应用程序,我需要遵循以下命令并分别启动服务器和angular,例如:
-> node start
-> cd src/Client_App
-> ng serve
我需要使用一个命令来启动两个应用程序,或者添加我的Angular的dist文件,以便在我现在使用Jade的NodeJS的开头运行。
我仍然不熟悉NodeJS,仍然不知道如何配置它。
有人可以帮忙吗?谢谢
我现在尝试将dist文件夹添加到我的views文件夹并在app.js中运行
app.get('/', function (req, res, next) {
res.sendFile(path.join(__dirname + '/app_server/views/ngapp/index.html'));
});
答案 0 :(得分:1)
使用CLI for
构建应用程序时,会得到一个ng build --prod
文件夹:此文件夹包含所有应用程序,并捆绑在不同的文件中(可以看看他们)。
要以此创建一个.ZIP文件,您需要做两件事:
dist
文件夹您有第一个,但没有第二个。
您需要的只是一台非常简单的服务器。例如,NPM上的http-server可以做到。通过将其安装为开发依赖项,您可以在dist
文件
package.json
现在用
运行它"deploy-locally": "http-server ./dist"
甚至更好,
npm run deploy-locally
并运行
"start": "http-server ./dist"
如果您不想使用NPM软件包(或被迫使用NodeJS),只需在JS文件中创建一个基本的http服务器,然后使用命令行运行它(对不起,对此没有帮助,不是现在进入nodeJS)。
答案 1 :(得分:0)
您可以创建一个新路由,并将app.route传递为express.static,如下所示,
var express = require('express');
var path = require('path');
var bodyParser = require('body-parser');
var app = express();
app.use(express.static(path.join(__dirname, 'dist')));
通过运行此命令,确保您已经安装了angular应用程序的版本,
ng build --prod --build-optimizer
在这种情况下,您需要快速安装。 express
具有处理所有这些问题的惊人方法