gpt4 book ai didi

node.js - 快速启动 Angular 应用程序

转载 作者:太空宇宙 更新时间:2023-11-03 22:23:05 25 4
gpt4 key购买 nike

我有一个在线快速服务器设置,它加载多个端口,例如,这些端口是在子域上设置的。端口 9000 加载主 domain.com 端口 8000 在“app.domain.com”加载主应用程序 端口 1000 加载“signup.domain.com”,应用程序的构建版本位于端口 8500“build.domain.com” 。

该应用程序是一个 Angular 应用程序,但是当我去加载 Angular 应用程序时,它会在端口 4200 上加载,或者显示 8500 正在使用中。所以目前我正在快速加载它,如下所示:

// Build Application - In Development
var appbuild = express();
appbuild.get('/', function (req, res){
res.sendFile('/app/build/myapp/src/index.html', { root: '.' })
});

var port = 8500;
appbuild.listen(port);
console.log('Build App Listening on port', port);

所以我的问题是在 Express 中,我如何才能不编写 sendfile 命令,使其在端口 8500 上的该位置启动 Angular 应用程序,以便我的子域名能够正常工作。我问这个的原因是因为现在它所做的只是加载索引文件,但 Angular 或应用程序没有运行,所以我只看到源代码显示应用程序根和空白的白页。

提前谢谢您。罗伯特

---更新。我决定发布整个 Express 文件。我的问题是尝试在 Express 启动时从子文件夹中加载端口 8500 上的 Angular 应用程序。这是完整的 server.js 代码:

// server.js

const express = require('express'),
path = require('path'),
bodyParser = require('body-parser'),
cors = require('cors'),
mongoose = require('mongoose'),
config = require('../config/DB');

mongoose.Promise = global.Promise;
mongoose.connect(config.DB).then(
() => {console.log('Database is connected') },
err => { console.log('Can not connect to the database'+ err)}
);


// Main Website
var web = express();
web.get('/', function (req, res){
res.sendFile('/web/index.html', { root: '.' })
});

var port = 9000;
web.listen(port);
console.log('Web Listening on port', port);

// Main Application
var app = express();
app.get('/', function (req, res){
res.sendFile('/app/index.html', { root: '.' })
});

var port = 8000;
app.listen(port);
console.log('Main App Listening on port', port);


// Build Application - In Development
var appbuild = express();
appbuild.get('/', function (req, res){
res.sendFile('/app/build/myapp/src/index.html', { root: '.' })
});

var port = 8500;
appbuild.listen(port);
console.log('Build App Listening on port', port);

// Sign up Portal
var sign = express();
sign.get('/', function (req, res){
res.sendFile('/signup/index.html', { root: '.' })
});

var port = 10000;
sign.listen(port);
console.log('Sign Up Portal Listening on port', port);

最佳答案

请参阅此链接 https://malcoded.com/posts/angular-backend-express

将您的代码更新为以下内容:

const express = require('express');

const app = express();

app.listen(8500, () => {
console.log('Server started!');
});

如果您的 Angular 版本不是 1.x,则需要构建 Angular 应用程序

ng build

另外,我认为这个问题与您的问题类似: Not able to view Angular app via express/heroku?

关于node.js - 快速启动 Angular 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51219429/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com