在Angular 2中实现插件架构/插件系统/可插拔框架
我想在Angular 2应用程序中实现一个可插拔(plug-in)框架.
(我开发这个可插拔框架的具体用例是我需要开发一个微型内容管理系统,由于这里不一定详细阐述的一些原因,Angular 2非常适合该系统的大部分需求.) 通过可插拔框架(或插件架构),我特别指的是允许第三方开发人员通过使用可插拔组件创建或扩展主应用程序的功能的系统,而无需直接访问或了解主应用程序的源代码或内部工作. 可插拔框架的示例包括诸如WordPress或Drupal之类的常见内容管理系统. 理想情况(与Drupal一样)将是简单的将这些可插拔组件(或插件)放入文件夹中,让应用程序自动检测它们,并让它们只是神奇地“工作”. 我正在努力确定以下五个问题的答案. >实用性:Angular 2应用程序的插件框架是否也是实用的? (到目前为止,我还没有发现任何实际的方法来创建具有Angular2的真正可插拔框架.) 一般来说,使用角度2是非常可取的,因为: >这是非常快的 我非常喜欢在当前的项目中使用Angular 2.如果我能使用Angular 2,我也将使用Angular-CLI和Angular Universal(用于服务器端渲染). 这是我的想法,到目前为止,关于上面的问题.请检查并提供您的反馈和启示. > Angular 2应用程序消耗包 – 但这并不一定等于允许应用程序中的插件.其他系统(例如Drupal)中的插件可以通过将插件文件夹删除到公共模块目录中而被自动“系统”拾取.在Angular 2中,一个包(作为插件可能是)通常通过npm安装,添加到package.json,然后手动导入应用程序 – 如在app.module中.这比删除文件夹的Drupal方法要复杂得多,使系统自动检测包.安装插件越复杂,人们就越不可能使用它们.如果Angular 2有一种自动检测和安装插件的方法会更好.我非常有兴趣找到一种方法,允许非开发人员安装Angular 2应用程序并安装任何选定的插件,而无需了解所有应用程序的架构. 请分享你的想法和想法.提前谢谢了.
示例应用程序与工作插件系统(感谢Gijs创建
github回购!)
https://github.com/PacktPublishing/Mastering-Angular-2-Components/tree/master/angular-2-components-chapter-10基于电子书
Mastering Angular 2 Components
>插件架构来扩展核心应用程序组件 干杯,尼克拉斯 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |