文件名称:可重新插拔:React + Redux应用程序中的可插拔微型前端
文件大小:214KB
文件格式:ZIP
更新时间:2024-02-25 15:34:47
framework typescript frontend dependency-injection inversion-of-control
可插拔 Repluggable是一个为前端应用程序实现控制反转的库,使中或高复杂性项目的开发变得更加容易。 目前,Repluggable在React + Redux应用程序中实现了微前端,并计划在未来使其独立于框架。 可插拔应用程序的功能由可插拔软件包列表逐步组成。 每个软件包都通过在其中添加新功能来扩展已加载的软件包。 由某个程序包提供的UI部分可以在任何地方呈现,并且不仅限于DOM的专用子树。 所有软件包均在模块化Redux存储中私下管理其状态,该存储充当公共事件机制的角色。 包通过提供和使用API(它们是实现声明的接口的对象)相互交互。 程序包可以在运行时插入和拔出,而无需重新加
【文件预览】:
repluggable-master
----.github()
--------workflows()
----.yarnversion(5B)
----yarn.lock(311KB)
----src()
--------propsDeepEqual.tsx(530B)
--------throttledStore.tsx(9KB)
--------tarjanGraph.ts(2KB)
--------renderSlotComponents.tsx(4KB)
--------invokeSlotCallbacks.ts(741B)
--------storeContext.ts(212B)
--------errorBoundary.tsx(3KB)
--------appHostUtils.ts(387B)
--------appHost.ts(33KB)
--------index.ts(1KB)
--------appHostServices.ts(1KB)
--------appMainView.tsx(1KB)
--------monitorAPI.ts(3KB)
--------loggers.ts(4KB)
--------hot.ts(893B)
--------interceptEntryPoints.ts(1KB)
--------extensionSlot.ts(2KB)
--------interceptAnyObject.ts(1KB)
--------shellContext.ts(196B)
--------API.ts(17KB)
--------installedShellsState.ts(2KB)
--------connectWithShell.tsx(10KB)
--------repluggableAppDebug()
----.vscode()
--------launch.json(337B)
----.ci_config(30B)
----maven()
--------assembly()
----media()
--------repluggable-logo.svg(5KB)
----examples()
--------helloWorld()
----.yarnrc(38B)
----tsconfig.json(578B)
----webpack.dev.config.js(64B)
----LICENSE(1KB)
----wallaby.js(50B)
----test()
--------appHost.spec.ts(39KB)
--------tryTypings.ts(246B)
--------renderSlotComponents.spec.tsx(12KB)
--------connectWithShell.spec.tsx(24KB)
--------errorBoundary.spec.tsx(5KB)
--------appHost.mock.ts(2KB)
--------testKit.spec.tsx(4KB)
--------loggers.spec.ts(10KB)
--------customExtensionSlot.spec.ts(4KB)
--------interceptEntryPoints.spec.ts(11KB)
--------interceptAnyObject.spec.ts(6KB)
--------installedShellsState.spec.ts(1KB)
----jest.config.js(387B)
----__tests__()
--------spec-setup.js(211B)
----tslint.json(4KB)
----README.md(24KB)
----webpack.prod.config.js(65B)
----docs()
--------3rd-party-licenses.md(2KB)
----.gitignore(963B)
----testKit()
--------index.tsx(7KB)
--------mockPackage.ts(2KB)
--------emptyLoggerOptions.ts(380B)
--------withConsoleErrors.ts(327B)
--------withThrowOnError.ts(1KB)
--------package.json(41B)
----webpack.base.config.js(3KB)
----package.json(3KB)
----webpack.local.config.js(63B)
----.nvmrc(3B)