# @alexpuertasr/react-qr-scanner 中文文档

规范地址：https://npmcn.com/package/%40alexpuertasr/react-qr-scanner/

版本：1\.2\.10
npm 元数据更新时间：2024-03-10T23:24:49.655Z
中文译文更新时间：2026-11-06T02:25:36.026Z
软件包许可：MIT

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

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

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

- 包体积（解压后）：4.9 MB，43 个文件
- 模块格式：ESM + CJS
- TypeScript 类型：包内自带
- 运行依赖：1 个
- peer 依赖：react ^17\.0\.2 \|\| ^18\.0\.0，react-dom ^17\.0\.2 \|\| ^18\.0\.0
- 首次发布：2024-03-10T23:24:48.830Z
- 最新版本发布：2024-03-10T23:24:49.149Z
- 近 30 天下载量：6441（2026-10-06 至 2026-11-04，npm 官方下载统计）
- 已发布版本数：1（近 12 个月 0 个）

## 中文简介

在反应中扫描 qr 代码的库 .

## 安装

```sh
npm install @alexpuertasr/react-qr-scanner
```

也可以使用：`pnpm add @alexpuertasr/react-qr-scanner`、`yarn add @alexpuertasr/react-qr-scanner`、`bun add @alexpuertasr/react-qr-scanner`

## README

### 特征

-   使用智能手机相机或网络相机扫描Qr代码.

### 演示

检查 [演示](https://yudielcurbelo.github.io/react-qr-scanner/)。 。 。 .

### 安装

```
yarn add @yudiel/react-qr-scanner

npm install @yudiel/react-qr-scanner
```

### 使用量

```jsx
import {QrScanner} from '@yudiel/react-qr-scanner';

const App = () => {
  return (
      <QrScanner
          onDecode={(result) => console.log(result)}
          onError={(error) => console.log(error?.message)}
      />
  );
}
```

### 支持的格式

| 1D产品 | 1D 工业 | 二维 |
| --- | --- | --- |
| 刚果爱国者联盟- A 类 | 代码 39 | QR 代码 |
| 欧安-8 | 代码 128 | 数据矩阵 |
| 欧安-13 | 简易新闻聚合14 | 阿兹特克 |
|  |  | PDF 417 (中文(简体) ) |

### 限制

-   由于浏览器执行,相机只能通过https或localhost访问.
-   服务器侧渲染不会起作用,所以在浏览器环境中渲染时只需要组件.

### API 密码

| 属性 | 类型 | 默认值 | 说明 |
| --- | --- | --- | --- |
| 约束 | [介质跟踪约束](https://developer.mozilla.org/en-US/docs/Web/API/MediaTrackConstraints) | `{ facingMode: 'environment' }` | 指定应该使用哪个相机(如果有的话) . |
| 容器样式 | `object` | 无 | 容器元素的样式对象. |
| 视频Style | `object` | 无 | 视频元素的样式对象 . |
| 扫描延迟 | `number` | `500` | QR钩的扫描期. |
| 视频 | `string` | `videoId` | 视频元素的ID. |
| 报告 | `function` | 无 | 为结果对象扫描事件处理器 . |
| 十进制时 | `function` | 无 | 扫描事件处理器解码值 . |
| 错误 | `function` | 无 | 为错误对象扫描事件处理器 . |
| 查看窗口 | `component` | 无 | 查看Finder 组件以在视频元素中覆盖渲染 |
| 隐藏 | `boolean` | `true` | 将扫描数隐藏在视频元素中 |
| 停止解析 | `boolean` | `false` | 停止解码进程 |

## 常见问题

### @alexpuertasr/react-qr-scanner 是什么？

在反应中扫描 qr 代码的库 \.

### 如何安装 @alexpuertasr/react-qr-scanner？

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

### @alexpuertasr/react-qr-scanner 支持 TypeScript 吗？

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

### @alexpuertasr/react-qr-scanner 支持 ESM 还是 CommonJS？

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

### @alexpuertasr/react-qr-scanner 可以商用吗？

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

### @alexpuertasr/react-qr-scanner 的下载量有多少？

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

### @alexpuertasr/react-qr-scanner 还在维护吗？

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

