# @atlaskit/editor-plugin-track-changes 中文文档

规范地址：https://npmcn.com/package/%40atlaskit/editor-plugin-track-changes/

版本：29\.0\.17
npm 元数据更新时间：2026-11-07T01:22:35.265Z
中文译文更新时间：2026-11-07T02:50:27.150Z
软件包许可：Apache-2\.0

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

原始 npm 页面：https://www.npmjs.com/package/%40atlaskit/editor-plugin-track-changes
原文对照：https://npmcn.com/package/%40atlaskit/editor-plugin-track-changes/?lang=original
项目主页：https://bitbucket.org/atlassian/atlassian-frontend-mirror#readme
源码仓库：https://bitbucket.org/atlassian/atlassian-frontend-mirror

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

- 包体积（解压后）：136 kB，62 个文件
- 模块格式：ESM + CJS
- TypeScript 类型：包内自带
- 运行依赖：11 个
- peer 依赖：react ^18\.2\.0 \|\| ^19\.2\.0，react-intl ^5\.25\.1 \|\| ^6\.0\.0 \|\| ^7\.0\.0，@atlaskit/editor-common ^134\.9\.0
- 首次发布：2025-07-08T20:53:27.213Z
- 最新版本发布：2026-11-07T01:22:35.113Z
- 近 30 天下载量：33050（2026-10-07 至 2026-11-05，npm 官方下载统计）
- 已发布版本数：472（近 12 个月 402 个）

## 中文简介

显示 @ atlaskit/ editor- core 的 Diff 插件

## 安装

```sh
npm install @atlaskit/editor-plugin-track-changes
```

也可以使用：`pnpm add @atlaskit/editor-plugin-track-changes`、`yarn add @atlaskit/editor-plugin-track-changes`、`bun add @atlaskit/editor-plugin-track-changes`

## README

# 编辑器插件音轨变化

@ atlaskit/ editor- core 的音轨更改插件

## 概览

Track Change插件可以跟踪和显示Atlassian编辑器中的文档更改. 它与Show Diff插件相融合,可视化内容修改,并提供命令来切换变化的显示并重置基线进行比较.

## 主要特点

-   **切换更改显示** - 在编辑器中使用 `toggleChanges` 命令
-   **基线重设** - 重新设定用于跟踪变化的基准 `resetBaseline` 命令
-   **工具栏集成** - 在编辑工具栏中可选地显示音轨更改按钮
-   **共享状态** - 通过共享插件状态访问更改显示状态和 diff 可用性
-   **显示 Diff 集成** - 与 Show Diff 插件进行无缝工作,以进行视觉变化显示

## 安装

-   **安装** - 说吧 `yarn add @atlaskit/editor-plugin-track-changes`
-   **无** - 说吧 [@atlaskit/editor-plugin-track-changes (英语)](https://www.npmjs.com/package/@atlaskit/editor-plugin-track-changes)
-   **来源** - 说吧 [键盘](https://bitbucket.org/atlassian/atlassian-frontend/src/master/packages/editor/editor-plugin-track-changes)
-   **套装** - 说吧 [unpkg.com (英语)](https://unpkg.com/@atlaskit/editor-plugin-track-changes/dist/)

## 使用量

### 导入

`import { trackChangesPlugin } from '@atlaskit/editor-plugin-track-changes';`

### 依赖关系

**要求 :**

-   `ShowDiffPlugin` - 显示音轨变化 diff 视图需要

**可选 :**

-   `PrimaryToolbarPlugin` - 如果使用,则需要 `showOnToolbar: true`
-   `ToolbarPlugin` - 用于注册音轨更改按钮的替代工具栏插件

### 配置

插件接受可选配置对象 :

```typescript
trackChangesPlugin({
  showOnToolbar: true // Shows track changes button in the toolbar (default: false)
})
```

### 示例

```typescript
import React from 'react';

import Button from '@atlaskit/button/new';
import { cssMap } from '@atlaskit/css';
import { useSharedPluginStateSelector } from '@atlaskit/editor-common/use-shared-plugin-state-selector';
import { ComposableEditor } from '@atlaskit/editor-core/composable-editor';
import { usePreset } from '@atlaskit/editor-core/use-preset';
import { basePlugin } from '@atlaskit/editor-plugins/base';
import { Box } from '@atlaskit/primitives/compiled';
import { token } from '@atlaskit/tokens';

import { showDiffPlugin } from '@atlaskit/editor-plugin-show-diff';
import { trackChangesPlugin } from '@atlaskit/editor-plugin-track-changes';

const styles = cssMap({
    aboveEditor: {
        paddingTop: token('space.100'),
        paddingBottom: token('space.100'),
    },
    everythingContainer: {
        paddingTop: token('space.200'),
        paddingBottom: token('space.200'),
        paddingLeft: token('space.200'),
        paddingRight: token('space.200'),
    },
});

function Editor() {
    const { preset, editorApi } = usePreset(
        (builder) =>
            builder.add(basePlugin).add(showDiffPlugin).add(trackChangesPlugin),
        [],
    );

    const isSelected = useSharedPluginStateSelector(editorApi, 'trackChanges.isDisplayingChanges');

    return (
        <Box xcss={styles.everythingContainer}>
            <Box xcss={styles.aboveEditor}>
                <Button
                    appearance="primary"
                    onClick={() => {
                        editorApi?.core.actions.execute(
                            editorApi?.trackChanges.commands.toggleChanges,
                        );
                    }}
                    isSelected={isSelected}
                >
                    Show Diff
                </Button>
            </Box>
            <ComposableEditor preset={preset} />
        </Box>
    );
}

export default Editor;
```

可找到详细的文件和示例使用 [这里](https://atlaskit.atlassian.com/packages/editor/editor-plugin-track-changes)。 。 。 .

## 支助

支持,访问 [\# 帮助编辑器 #](https://atlassian.slack.com/archives/CFG3PSQ9E) 黑频道或通过 [去/编辑-帮助](https://go/editor-help)。 。 。 .

## 许可证

请看 [阿特拉斯前端 - 许可证](https://hello.atlassian.net/wiki/spaces/AF/pages/2589099144/Documentation#License) 获取更多的许可证信息.

## 常见问题

### @atlaskit/editor-plugin-track-changes 是什么？

显示 @ atlaskit/ editor- core 的 Diff 插件

### 如何安装 @atlaskit/editor-plugin-track-changes？

在项目目录运行 npm install @atlaskit/editor-plugin-track-changes，或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖：react（^18\.2\.0 \|\| ^19\.2\.0）、react-intl（^5\.25\.1 \|\| ^6\.0\.0 \|\| ^7\.0\.0）、@atlaskit/editor-common（^134\.9\.0）。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖，Yarn 需要手动安装。

### @atlaskit/editor-plugin-track-changes 支持 TypeScript 吗？

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

### @atlaskit/editor-plugin-track-changes 支持 ESM 还是 CommonJS？

同时提供 ES Module 与 CommonJS 入口，import 和 require\(\) 都可以使用，打包工具会自动选择合适的版本。

### @atlaskit/editor-plugin-track-changes 可以商用吗？

@atlaskit/editor-plugin-track-changes 使用 Apache-2\.0 许可。宽松许可：允许商业使用、修改和再分发，并附带明确的专利授权；分发时需保留许可与 NOTICE 文件，修改过的文件要注明改动。以上为概括，不构成法律意见，请以许可原文为准。

### @atlaskit/editor-plugin-track-changes 的下载量有多少？

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

### @atlaskit/editor-plugin-track-changes 还在维护吗？

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

