# @100mslive/react-sdk 中文文档

规范地址：https://npmcn.com/package/%40100mslive/react-sdk/

版本：0\.13\.3
npm 元数据更新时间：2026-09-30T17:35:43.054Z
中文译文更新时间：2026-11-05T17:39:37.058Z
软件包许可：MIT

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

原始 npm 页面：https://www.npmjs.com/package/%40100mslive/react-sdk
原文对照：https://npmcn.com/package/%40100mslive/react-sdk/?lang=original
项目主页：https://github.com/100mslive/web-sdks#readme
源码仓库：https://github.com/100mslive/web-sdks

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

- 包体积（解压后）：336 kB，37 个文件
- 模块格式：ESM + CJS
- TypeScript 类型：包内自带
- 运行依赖：3 个
- peer 依赖：react \>=16\.8 \<19\.0\.0
- 首次发布：2021-11-13T09:09:24.354Z
- 最新版本发布：2026-09-30T17:35:42.729Z
- 近 30 天下载量：180367（2026-10-04 至 2026-11-02，npm 官方下载统计）
- 已发布版本数：671（近 12 个月 81 个）

## 中文简介

[![Lint, Test and Build](https://github.com/100mslive/web-sdks/actions/workflows/lint-test-build.yml/badge.svg)](https://github.com/100mslive/web-sdks/actions/workflows/lint-test-build.yml) \[!\]\[Bundle Size\] (https://badgen.net/bundle Phobiado/minzip/@100mslive\] (中文(简体) )

## 安装

```sh
npm install @100mslive/react-sdk
```

也可以使用：`pnpm add @100mslive/react-sdk`、`yarn add @100mslive/react-sdk`、`bun add @100mslive/react-sdk`

## README

# 100ms 反应 SDK

[![Lint, Test and Build](https://github.com/100mslive/web-sdks/actions/workflows/lint-test-build.yml/badge.svg)](https://github.com/100mslive/web-sdks/actions/workflows/lint-test-build.yml) [![Bundle Size](https://badgen.net/bundlephobia/minzip/@100mslive/react-sdk)](https://bundlephobia.com/result?p=@100mslive/react-sdk) [![License](https://img.shields.io/npm/l/@100mslive/react-sdk)](https://www.100ms.live/) ![Tree shaking](https://badgen.net/bundlephobia/tree-shaking/@100mslive/react-sdk)

此软件包是一个SDK核心上的反应包 ()`@100mslive/hms-video-store`) (中文(简体) ). 通过下列途径提供使用商店、动作和通知的简单方式: 反应钩子. 还提供了其他的钩子,以便于使用 超越了原始的. 如果有人使用基于类的反应组件,他们会更好 直接使用核心 sdk .

### 安装

```
// npm
npm install @100mslive/react-sdk@latest --save

// yarn
yarn add @100mslive/react-sdk@latest
```

### 使用量

添加 `HMSRoomProvider` 从 `@100mslive/react-sdk` 在您想要使用钩子的组件树的顶层。 Wihoot 这钩子会出错的.

```
<HMSRoomProvider>
   <YourComponent></YourComponent>
</HMSRoomProvider>
```

默认使用时 `HMSRoomProvider` 离开/关闭帐单时,房间请假. 要禁用此行为, 您可以通过 `leaveOnUnload` 作为 `false`

> 注:上述休假可能或不会成功发送到服务器,因为它取决于浏览器的执行. 这在基于铬的浏览器上起作用.

### 原始钩子

这些是用钩子包裹的.

-   使用 HMSStore - 从仓库获取任何状态
-   使用 HMS 动作 - hms 动作执行任何动作
-   使用HMS通知 -- -- 接收任何用于会议室的新通知/错误
-   使用HMSVanillaStore - 返回存储对象以直接用于非反应上下文
-   使用 HMSStats Store - 获取与 Webrtc 相关的数据

### 帮助钩子

-   使用 Video - 附加和分解基于 trackId 的视频
-   使用VideoList - 有助于构建视频平面平面画廊视图
-   使用ScreenShare - 切换屏幕共享
-   使用 CustomEvent - 添加 [自定义事件](https://www.100ms.live/docs/javascript/v2/features/chat#custom-events)
-   使用Devices - 返回所有 A/V 设备的列表
-   参与者 -- -- 按角色或元数据过滤参与者数
-   使用PreviewJoin - 执行预览+加入
-   使用 AVTogle - 为音频和视频切换哑巴/ Unmute
-   使用RemoteAVTogle - 在平面平面上切换远程哑弹/unmute + 音频音量变化器
-   使用 AutoplayError - 解锁浏览器自动播放块
-   使用 AudioLevelStyles - 应用基于其音频级别元素的 css 属性

参见 [文档](https://www.100ms.live/docs/javascript/v2/quickstart/react-quickstart) 更详尽的指南.

## 常见问题

### @100mslive/react-sdk 是什么？

\[\!\]\[Bundle Size\] \(https://badgen\.net/bundle Phobiado/minzip/@100mslive\] \(中文\(简体\) \)

### 如何安装 @100mslive/react-sdk？

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

### @100mslive/react-sdk 支持 TypeScript 吗？

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

### @100mslive/react-sdk 支持 ESM 还是 CommonJS？

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

### @100mslive/react-sdk 可以商用吗？

@100mslive/react-sdk 使用 MIT 许可。宽松许可：允许商业使用、修改和再分发，通常只需在分发时保留原版权与许可声明。以上为概括，不构成法律意见，请以许可原文为准。

### @100mslive/react-sdk 的下载量有多少？

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

### @100mslive/react-sdk 还在维护吗？

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

