我是Angular2的初学者。
这是我关注的文章: https://scotch.io/tutorials/mean-app-with-angular-2-and-the-angular-cli
Tl; dr:ng new app,ng serve,npm install express等,创建服务器文件,ng build,最后节点express.js从dist发送index.html
我在本文中使用app构建的问题是它从dist服务,这意味着我必须停止服务器,运行新的构建并在每次更改时重新启动服务器,这对于开发人员来说非常麻烦。我希望每次刷新都能反映出客户端的更改。
有人能指出我正确的方向,以实现这一目标吗?或者让我知道如何使架构正确,即使它意味着从头开始
PS:我一直试图修改这个例子来从开发(src /)服务,但到目前为止还没有成功。浏览器无法找到依赖项,显示" loading .."抛出错误,如"系统未定义"和"语法错误'<'
答案 0 :(得分:1)
我理解你的痛点。我已经在某种程度上看过这个教程和它的公平,但正如你所说,没有为更改编写自动刷新脚本。但是,我决定为MEAN堆栈项目开发创建自己的存储库。检查我托管我的MEAN应用程序的以下URL,包括
https://github.com/darpanpathak/MEAN2-MarvelApp
此存储库将帮助您使用angular2启动MEAN堆栈应用程序。
如果你正在寻找同样的话,请竖起大拇指。答案 1 :(得分:1)
Tl; dr:ng new app,ng serve,npm install express等,创建服务器 文件,ng构建,最后是node express.js来提供index.html DIST
要让webpack在开发过程中观察您的更改,您只需在构建应用时添加--watch
即可。所以你应该在控制台终端输入这样的东西:
ng build --watch
然后运行您的服务器:
node server.js
这应该有效。
答案 2 :(得分:0)
我也遇到过这个问题,所以我写了一篇关于它的帖子。 您可以找到详细解决方案here。
总之,对我有用的是为服务器和客户端使用不同的端口,并配置我的npm start
命令来运行服务器和服务器。客户并行。
您将进行热重新加载(当您更改客户端代码时,它将立即刷新Web浏览器),并且该网页将调用您的服务器API。
ng build --watch
工作,所以我不得不考虑这个解决方法。