我有一个可在localhost:8080上运行的Web服务器。它服务于index.html。还有一个节点服务器正在运行ng serve
(localhost:4200)。
我希望网络服务器使用角度服务器,因此将手动输入的.ts文件添加到index.html,但HMR无法正常工作,因为它试图访问http://localhost:8080/sockjs-node
。我尝试在deployUrl
中设置baseHref
和.angular-cli.json
,但没有任何改变。无论如何都要这样做或整个设置不好?
答案 0 :(得分:0)
index.html不访问.ts文件。没有必要在任何index.html中引用它们。在由任何浏览器处理之前,Typescript被编译为Javascript。此编译是命令ng build
和ng serve
的作用。 ng build
首先进行一些优化(没有源映射的缩小,等等),而ng serve
快速编译但未经优化,启动服务器并监听代码更改。但是那个服务器(正如cli中的警告所说)不是生产就绪的,而且非常不稳定
对于制作,您不应使用ng serve
。您应该只使用ng build
进行编译,并在生产服务器(如nginx)上部署/ dist /文件夹,或者将其上传到firebase,heroku等服务以及各自的clis。
答案 1 :(得分:0)
我需要使用ng serve --public-host http://localhost:4200
运行角度。这样webpack知道从哪里提取更新。