Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/31.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 如何从现有nodejs服务器为角度应用程序提供服务?_Node.js_Angular - Fatal编程技术网

Node.js 如何从现有nodejs服务器为角度应用程序提供服务?

Node.js 如何从现有nodejs服务器为角度应用程序提供服务?,node.js,angular,Node.js,Angular,我有一个Angular 6应用程序和一个现有的nodejs api应用程序。 到目前为止,我已经使用了 ng serve 运行并构建angular应用程序 现在我想从现有的NodeJS服务器为我的angular应用程序提供服务 我该怎么做?我找不到任何文件 步骤: 执行ng build,它将创建一个dist文件夹,您可以轻松地从节点Web服务器框架(如express、Hapi或Koa 如果您使用的是express.js,那么您可以使用express.static(path.join(uu di

我有一个Angular 6应用程序和一个现有的nodejs api应用程序。 到目前为止,我已经使用了

ng serve
运行并构建angular应用程序

现在我想从现有的NodeJS服务器为我的angular应用程序提供服务

我该怎么做?我找不到任何文件

步骤:

  • 执行
    ng build
    ,它将创建一个dist文件夹,您可以轻松地从节点Web服务器框架(如
    express
    Hapi
    Koa
  • 如果您使用的是express.js,那么您可以使用express.static(path.join(uu dirname,'dist'))
  • 现在使用节点服务器URL提供类似
    http://localhost:nodeport
  • 如果您正在使用Hapi:请查看此项

    ==================================================================基本快速服务器================

    const express = require('express');
    const app = express();
    const path = require("path");
    const fs = require("fs");
    
    
    
    
    //const bodyParser = require('body-parser');
    app.use(express.static(path.join(__dirname, 'dist')));
    //app.use(bodyParser.json());
    
    
    //app.use('/api/v1/', require('./api/routes'));
    
     app.listen(8080,function(err){
       if(!err){
        console.log("server is running at port:8080);
       }
     })
    

    您有两种方式提供角度水疗服务:

    • 通常是dev:Web包运行服务器,即
      ng service
      。动态,即对文件的任何修改都会启动重建并更新输出

    • 通常prod:为SPA构建所有html/js文件(使用
      ng build[…]
      ),以静态方式由
      节点
      服务器提供服务

    在您的情况下,如果您想使用现有的
    节点
    服务器,这意味着您必须构建文件(使用
    ng build
    ),然后在
    节点
    应用程序中连接通常的
    节点
    静态文件服务代码段


    不过要小心:每次要更新显示时,都必须进行完整构建。因此,如果不经常使用,也可以,但对于开发环境来说,我想是不行的。

    这在开发过程中没有帮助。此外,这是一个非常手工的过程。有没有自动化的方法来执行此操作?