ng-docs / ng-docs.github.io

Angular 官方文档中文版预编译网站
https://angular.cn
Other
104 stars 22 forks source link

如何用angular开发一个插件系统 #56

Open alexspring123 opened 5 years ago

alexspring123 commented 5 years ago

我想通过angular实现一个后台管理系统框架,然后具体业务模块通过插件形式进行安装 期望目标: 1、框架系统 和 业务系统 是2个不同的angular工程,方便开发管理调试 2、将业务系统编译后放到指定目录后,框架系统能够自动识别并动态添加到路由中

目前还没有思路,请各位大牛帮忙指点一下,谢谢!

下面是我google到的一些文章: http://landcareweb.com/questions/3567/zai-angular-2456zhong-shi-xian-cha-jian-jia-gou-cha-jian-xi-tong-ke-cha-ru-kuang-jia

wszgrcy commented 5 years ago

个人项目写的组件

asnowwolf commented 5 years ago

其实如果你的应用全都是 Angular 技术栈的,那么你这个需求不一定要做成插件系统,最简单的方式就是设置一个几乎全空的根模块,它只负责加载其它模块。这样一来,这个根模块的代码就可以完全由程序生成,每个项目组在自己开发时使用一个 Mock 的根模块,但是在 CI 服务器上要自动生成整合的根模块,这样一来,你就可以完全像普通应用一样编译它了。 如果要用于非 Angular 技术栈,可以考虑使用 Angular Elements,每个应用的根组件都供其它模块使用。不过这样一来路由就不太好处理了。

alexspring123 commented 5 years ago

@asnowwolf 我用的都是angular技术栈,我可能同时有多个项目,分开开发,然后集中部署(一个根模块),如果每个项目编译都自动生成根模块的话,如何集中部署?

hstarorg commented 5 years ago

@alexspring123 asnowwolf的方法是说,独立开发,然后统一把代码发布到一起,由CI整体构建发布。

wthinkit commented 5 years ago

了解.net的可以思路参考Orchard CMS的模块化部分