我有两个angular项目在angular2
中开发。一个是公共门户,另一个是管理员。如果我以http://myaddress.com的形式托管主门户,那么我需要托管管理员在它下; URL应该是http://myaddress.com/admin。必须在IIS
中进行测试。
我有两个angular项目在angular2
中开发。一个是公共门户,另一个是管理员。如果我以http://myaddress.com的形式托管主门户,那么我需要托管管理员在它下; URL应该是http://myaddress.com/admin。必须在IIS
中进行测试。
3条答案
按热度按时间bsxbgnwa1#
您只需要将这两个项目托管在其各自的目录(需要IIS配置),然后使用
base-href
选项构建/部署应用程序:ny6fqffe2#
我的回答主要是理论上的。
1.创建一个
admin
项目的npm包(类似ng-packagr的东西会有帮助)。有一种格式可以公开您想要在此项目之外访问的所有模块。你可以在Google上找到关于这方面的详细信息。例如index.ts
等1.将其作为
dependency
包含在主项目的package.json
中。1.尝试在
MainProject
中创建路由,并在路由中使用延迟加载以获得更好的性能。类似于:AdminWrapperModule
更新
在我的项目中,我们有几个模块(确切地说是4个),类似于您的情况下的
admin
,我们意识到构建4个项目非常耗时(每个项目的构建时间约为7分钟)。所以我们最终实现了nrwl。这个工具帮助我们把所有4个项目都拉到了我们的主项目下。这有助于减少时间,因为我们不再需要在实际部署代码之前构建两个项目(一个Admin
和另一个MainProject
)。如果你真的需要的话,看看吧。如果你需要更多的项目隔离,那么不要选择Nrwl
。fjaof16o3#
它为我工作,只有一个运行在本地,另一个运行在本地网络Image of running both simultaneously
使用以下命令在本地网络中运行的命令:
ng服务--主机0.0.0.0
可以使用本地IP地址访问,例如:
http://192.168.0.152:4200
可以在终端窗口中使用以下命令访问该命令:
ipconfig
在linux/mac上:
ifconfig
另一个你正在运行的
ng serve
可以使用http://localhost:4200访问