Model view controller 为基于nodejs的MVC平台构建插件系统
出于以下几个原因,我希望能够在插件式系统中为我的应用程序构建功能:Model view controller 为基于nodejs的MVC平台构建插件系统,model-view-controller,node.js,plugins,express,Model View Controller,Node.js,Plugins,Express,出于以下几个原因,我希望能够在插件式系统中为我的应用程序构建功能: 新项目可以选择哪些插件是必需的,而不必为不需要的功能编写代码 其他开发人员可以为系统构建插件,而不需要太多关于核心工作的知识 我真的不知道如何去实施这个。我希望有一个插件文件夹来分别托管这些插件,但我想我的问题是: 插件如何与核心系统交互 文件夹结构是如何工作的?每一个都会持有标准的MVC结构:控制器、服务、模型、视图等吗 我想如果有人有关于这项技术的教程或文档,那会很有帮助。我已经做了一些搜索,但它与他们正在使用的实际代码(而
插件
文件夹来分别托管这些插件,但我想我的问题是:
我想如果有人有关于这项技术的教程或文档,那会很有帮助。我已经做了一些搜索,但它与他们正在使用的实际代码(而不是概念)有点太密切的关系,而且我还没有找到任何与nodejs特别相关的东西。为基础创建一个插件原型 功能,并允许用户在模块中定义其插件。在 模块用户将从原型继承一个对象,扩展其 然后导出一个返回插件的构造函数 反对 主系统根据需要(“pluginname”)和为加载所有插件
每个调用构造函数。我建议一种类似于我在正常运行时间项目()上所做的方法:
- 在应用程序的关键部分触发应用程序事件
- 在应用程序配置中添加“插件”部分
- 每个插件名称必须是一个包名称。插件包应该返回回调或带有init()函数的对象李>
- 无论哪种方式,在调用init()或执行回调时,都将需要运行的对象(配置、连接等)注入插件
- 插件模块将侦听器注册到应用程序事件并对其进行修改
- 轻量级
- 依赖npm获取依赖项
- 不要转动轮子