- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我制作了我的第一个 Angular2 应用程序,同时使用 ng serve
进行托管。现在我必须添加一些后端(因为我需要一些小型服务器逻辑)。
我找到了 this谁基本上向我解释了如何在 nodeJs 上托管 angular 2 应用程序。但是 ng serve
做了很多事情,检查更改,捆绑不同的 JS/CSS 文件,将 angular 注入(inject)我的模板,获取我的依赖项。
我不能只“生成” Angular 网站然后,因为我必须更新 Angular 部分以从网络 API 获取数据并使用它。
那么我应该怎么做才能从 ng serve
切换到 nodeJS
?
编辑:看了回答,应该是我说的不够清楚。我的 Angular JS 不是一个仅在客户端上运行的应用程序,我已经完成了其中的一部分(导航,某种形式,......)但现在我需要托管一个带有 Web 服务和 websocket 的服务器才能继续工作。这与将其部署到生产服务器无关。它即将转移到一个允许我在服务器端和客户端工作的环境。
最佳答案
我想我终于明白了你的问题:
ng serve
) 捆绑在一起的开发服务器,而是想使用您自己的 Node.js 驱动的服务器。ng build
)。您想要提供实时构建(必须由服务器自动生成)。这里是你如何做到的:
1) 观察、转译、捆绑...
Webpack 是完美的选择。
使用 Angular 应用程序的正确设置创建一个 webpack 配置文件。这是来自 angular2-webpack-starter 的示例:webpack.dev.js .
这个例子有点冗长。请记住,配置文件是您告诉 webpack 如何处理 .ts
文件、它应该生成什么包等的地方。
2) 使用 Node.js 服务器提供由 webpack 生成的包
我看到两个选项,具体取决于您想要多少控制权:
2a。使用webpack-dev-server
(不是很多控制)
webpack-dev-server --config config/webpack.dev.js --watch src/
您可以看到 webpack-dev-server 使用了前面提到的配置文件。
同样,您可以在 angular2-webpack-starter 的 package.json 中看到要运行的完整命令的示例。文件。
2b。创建自己的服务器(很多控制)
您可以使用 webpack-dev-middleware
创建一个 Node.js/Express 服务器,您可以向其提供在步骤 #1 中创建的配置文件。
中间件是一个神奇的链接,可以让您通过 Express 服务器提供从 webpack 发出的文件。
使用 webpack-dev-middleware
的 Node.js/Express 服务器示例:srcServer.js .
这是否回答了您的问题?
关于javascript - Angular2 : How to go from an "ng serve" hosting to a Node. Js托管,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41879292/
Windows“主机”文件编码是什么?是UTF-8吗?还是 ASCII + 系统代码页?应如何添加 IDN(带有变音符号等的国际域名)条目以及它们是否可以添加? 最佳答案 它应该是没有 BOM 的 A
我已经在谷歌上搜索了大约 90 分钟,但仍然没有答案。在哪里设置 default_url_options?我已经将其设置为 config.action_mailer.default_url_optio
我正在从它的样式文件中设计一个 Angular 组件,我发现我必须使用 :host ,:host() 或 :host-context selector ,它们各自有什么不同? 最佳答案 :主机 是用于
我正在创建简单的网络应用程序。而且我在服务器配置方面遇到了问题。当我尝试启动服务器时,收到错误消息 The element type "Host"must be terminated by the m
这个有效: 127.0.0.1 www.somesite.com 但不是这个: 127.0.0.1/somepath/www www.mysite.com 我做错了什么?是否可
我必须查看我的前同事留下的一些脚本,我很好奇为什么他在参数中使用 $a = $(Read-Host -Prompt "Write Something")节而不是 $a = (Read-Host -Pr
我在远程连接到 MySQL 服务器时遇到问题。我知道我的用户设置了来自任何主机的“%”通配符,因此我应该有权访问服务器。我可以使用我的凭据本地登录 MySQL 服务器,但不能远程登录。 我在 my.c
我正在尝试使用 angular 2 构建一个双主题应用程序。有问题的组件 css 已经使用 :host/deep/强制对子组件进行样式设置。 但是我正在尝试根据 html 主题切换此样式,并且我正在使
我需要将特定的传出连接(从我系统上的任何 网络客户端)重定向到特定的 IP。是的,可以通过在 /etc/hosts 文件中添加这一行来完成: 123.456.789.012 www.mydomain
尝试在开发中预览我的邮件程序,但出现上述错误。(使用 Michael Hartl 教程)。 我相信它因为我的主机而无法正常工作。但是,使用 cloud 9 我很难找到我的主机。在书中,它被定义为 Cl
nc 当我在虚拟机上执行它时工作正常。 Connection to 10.0.0.10 22 port [tcp/ssh] succeeded! 但是当我在 docker 容器内执行相同的命令时,它会
我正在学习PowerShell,想知道两者之间的区别 Read-Host -Prompt "Text" 和 Read-Host "Text" 是同一件事还是我没有看到的区别? 最佳答案 这是同一件事。
我无法对 Cassandra 节点进行查询。我能够连接到集群并进行连接。然而,在执行查询时,它失败了 Caused by: com.datastax.driver.core.exceptions.No
我有这样的场景,比如我需要运行一个位于 12.34.567 的 API curl 请求,登录后我必须再登录一台主机 98.76.543。 登录到第二个主机后,我必须运行curl -XPOST -H"C
当我尝试 git push -u origin master到我的存储库,我得到 400 Bad Request .我特意用 编辑了一些信息。 最近从 gitlab-ee 中解绑了 nginx,并验
假设我有某个程序的源代码,源代码使用 GNU autotools,为了简单起见,假设该程序绝不是任何类型的开发工具。如果我手边有交叉工具链,我可以使用 --host configure 为平台 foo
在我的 ASP.NET Core 2.0 项目中,我一直在使用 Microsoft.Extensions.Hosting 命名空间中的 IHostingEnvironment 和 IApplicati
我正在使用以 Python3.6 为基础的 docker 镜像。突然间它开始崩溃(启动后立即退出)。所以我冲进了容器,发现它崩溃是因为与容器化 postgres 数据库的连接突然失败。我设法得到的唯一
已关闭。此问题不符合Stack Overflow guidelines 。目前不接受答案。 这个问题似乎不是关于 a specific programming problem, a software
我尝试使用 ssh命令连接到另一个远程主机。 ssh -p 21098 -i $OPENSHIFT_DATA_DIR/.ssh/host_key user@domain.com The authe
我是一名优秀的程序员,十分优秀!