# @datalayer/reactor-manager 中文文档

规范地址：https://npmcn.com/package/%40datalayer/reactor-manager/

版本：1\.3\.5
npm 元数据更新时间：2026-11-07T09:08:55.319Z
中文译文更新时间：2026-11-11T14:58:57.939Z
软件包许可：BSD-3-Clause

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40datalayer/reactor-manager
原文对照：https://npmcn.com/package/%40datalayer/reactor-manager/?lang=original
项目主页：https://github.com/datalayer/reactor#readme
源码仓库：https://github.com/datalayer/reactor

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：58.2 kB，11 个文件
- 模块格式：ES Module
- TypeScript 类型：包内自带
- 运行依赖：3 个
- peer 依赖：react \>=18，@datalayer/reactor ^1\.0\.0
- 首次发布：2026-09-19T15:55:35.025Z
- 最新版本发布：2026-11-07T09:08:54.991Z
- 近 30 天下载量：3896（2026-10-12 至 2026-11-10，npm 官方下载统计）
- 已发布版本数：10（近 12 个月 10 个）

## 中文简介

用于Datalayer反应堆平台的插件管理器——在应用程序运行时列出每个插件并开关每个插件.

## 安装

```sh
npm install @datalayer/reactor-manager
```

也可以使用：`pnpm add @datalayer/reactor-manager`、`yarn add @datalayer/reactor-manager`、`bun add @datalayer/reactor-manager`

## README

[![Datalayer](https://images.datalayer.io/legacy/datalayer-25.svg)](https://datalayer.ai/)

# 🔌 `@datalayer/reactor-manager`

列出 a 中的每个插件 `@datalayer/reactor` 平台和开关 应用程序运行时关闭.

## 为什么是插件

管理插件的侧边栏是整个工作是插件的表面 系统本身。 每个主持人都自己写过,这意味着 每一个主机都回答同样的问题 有点不同,每个都 硬编码的 任何其它属于列表之外.

此一个依赖于没有其它插件, 并不知道它们的名字 。 写着 每个插件已经拥有的通过反应堆 API 的平台,即 为什么它可以列出很久后写的插件 .

## 它画的是什么

-   一个跨越名称、标识符和描述的过滤器.
-   每个插件一行:emoji,显示名,描述.
-   每行开关 `reactor.enable` 编号 : `reactor.disable`。 。 。 . `switchSize` (单位:千美元)`'small'` 默认,或 `'medium'`)设定其大小.
-   任何其它插件贡献 `manager-actions`,位于列表之上.

## 用这个

```tsx
import { buildReactorFromPlugins, configurePlugin } from '@datalayer/reactor';
import { ReactorSlot, useReactor } from '@datalayer/reactor/react';
import { PluginsManagerPlugin } from '@datalayer/reactor-manager';

const reactor = buildReactorFromPlugins([
  configurePlugin(PluginsManagerPlugin, {
    // Anything the application would break without. The manager protects
    // itself by default; naming your own replaces that, so include it unless
    // you mean to allow switching the sidebar off.
    protected: ['@datalayer/reactor-manager', '@your/shell'],
  }),
  /* your own */
]);

export function App() {
  useReactor(reactor);
  // Whatever you pass reaches the plugins contributing to `manager-actions`.
  return <ReactorSlot slot="sidebar" props={{ showingGraph, onToggleGraph }} />;
}
```

## 隐藏执行细节

薄适配器和它所依赖的通用插件是其中的一个特性 阅读侧边栏的人, 一个特性的两个开关是一个问题 无法回答. `hidden` (配置)或 `hiddenPlugins` (道克)留一出:

```tsx
configurePlugin(PluginsManagerPlugin, {
  hidden: ['@datalayer/reactor-graph'], // the adapter is the switch that matters
});
```

一个宿主的决定 而不是从依赖图推断出来的 A 类 依赖性常常值得自己切换——音乐实例要求您切换 因此,隐藏他们中的每一个人都会消除这一点.

## 插件管理器找不到

这个浏览器中的反应堆并不总是整个系统. 应用程序与 电线另一边的插件有第二套要管理,一个人 不应该因为插件运行的缘故而学习两个控件.

插件贡献 a **来源**: 构成其 拥有行 `PluginList` ——经理使用的同一种——并保留任意一种 找寻它的层次需要自己.

```tsx
contribution(ManagerPluginSource, {
  title: 'Backend plugins (Python)',
  order: 100,                      // after the browser's own, which are 0
  Component: BackendPluginSource,
});

function BackendPluginSource({ query, switchSize }: PluginSourceProps) {
  const { plugins, toggle } = useBackendPlugins();
  return (
    <PluginList
      plugins={plugins.map(toManagedPlugin)}
      query={query}
      switchSize={switchSize}
      onToggle={(name, next) => void toggle(name, next)}
    />
  );
}
```

一个组件而不是一个清单,因为否则管理员会打电话 别人的钩子——它不能有条件的做, 和一组来源 随着插件的切换而改变.

## 行动时段

需要侧边栏中控件的插件帮助 `MANAGER_ACTIONS_SLOT` 而不是要求主机绘制一个:

```tsx
build: () => ({
  components: [
    { slot: MANAGER_ACTIONS_SLOT, id: 'my-toggle', Component: MyToggle },
  ],
}),
```

它接收主机给经理的道具,不变. 经理没有 想想你的控制需要什么来导航, 没有商业发明 一种——但控件随着拥有它的插件而出现并消失, 这就是重点.

## 直接挂起视图

一个更愿意把名单本身放进 `PluginsManagerView` 通过 `protectedPlugins`,跳过插件及其配置.

## 常见问题

### @datalayer/reactor-manager 是什么？

用于Datalayer反应堆平台的插件管理器——在应用程序运行时列出每个插件并开关每个插件\.

### 如何安装 @datalayer/reactor-manager？

在项目目录运行 npm install @datalayer/reactor-manager，或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖：react（\>=18）、@datalayer/reactor（^1\.0\.0）。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖，Yarn 需要手动安装。

### @datalayer/reactor-manager 支持 TypeScript 吗？

支持。包内自带 TypeScript 类型声明（package\.json 声明了 types 入口），安装后即可获得类型提示，无需再安装 @types 包。

### @datalayer/reactor-manager 支持 ESM 还是 CommonJS？

以 ES Module 形式发布，推荐使用 import 引入。在 CommonJS 项目中，Node\.js 20\.19\+ / 22\.12\+ 可以直接 require\(\) 不含顶层 await 的 ES Module，更早的版本需要改用动态 import\(\)。

### @datalayer/reactor-manager 可以商用吗？

@datalayer/reactor-manager 使用 BSD-3-Clause 许可。宽松许可：允许商业使用、修改和再分发，通常只需在分发时保留原版权与许可声明。另外不得用原作者名义为衍生产品背书。以上为概括，不构成法律意见，请以许可原文为准。

### @datalayer/reactor-manager 的下载量有多少？

根据 npm 官方下载统计，@datalayer/reactor-manager 在 2026/10/12 – 2026/11/10 这 30 天内被下载 3,896 次，日均约 130 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入，适合横向比较热度，不能直接等同于使用人数。

### @datalayer/reactor-manager 还在维护吗？

最新版本 1\.3\.5 发布于 2026/11/07（4 天前）；至今共发布 10 个版本，其中过去 12 个月发布了 10 个；首次发布于 2026/09/19。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

