我使用Expressjs作为我的Angular2应用程序的后端。两个项目都在相同的目录结构中:
/index.html <-- Angular index file
/app.js <-- Expressjs
/package.json
/Gruntfile.js
/bin <-- Expressjs bin
/routes
/public <-- Angular directory
/bin <-- Angular bin
/main.ts
/app.component.ts
...
在我的package.json中,我有这个脚本启动Angular2和Expressjs
"start": "grunt & node ./bin/www & concurrently \"npm run tsc:w\" \"npm run lite\" "
这将按预期启动,但在不同的端口上启动。我想知道这是否是最好的解决方案。在某些情况下,我想访问Expressjs上的/ users /:id(从Angular进行调用时),在某些情况下,我想访问Angular上的/ users /:id,对于普通用户。
我应该在不同的端口上运行Express和Angular还是有更好的方法来实现这一点,例如在/ api中使用所有Express路由?在那种情况下,我该如何设置?使用不同的端口就是默认操作。