# @carouseldeck/react-18 中文文档

规范地址：https://npmcn.com/package/%40carouseldeck/react-18/

版本：1\.5\.4
npm 元数据更新时间：2026-11-04T08:57:41.376Z
中文译文更新时间：2026-11-09T18:32:12.695Z
软件包许可：MIT

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

原始 npm 页面：https://www.npmjs.com/package/%40carouseldeck/react-18
原文对照：https://npmcn.com/package/%40carouseldeck/react-18/?lang=original
项目主页：https://carousel.deck.cool/
源码仓库：https://github.com/pedrosousa13/deck-cool

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

- 包体积（解压后）：52.9 kB，14 个文件
- 模块格式：ES Module
- TypeScript 类型：包内自带
- 运行依赖：1 个
- peer 依赖：react \>=18 \<20，react-dom \>=18 \<20
- 首次发布：2026-10-12T17:06:56.194Z
- 最新版本发布：2026-11-04T08:57:40.968Z
- 近 30 天下载量：1938（2026-10-09 至 2026-11-07，npm 官方下载统计）
- 已发布版本数：11（近 12 个月 11 个）

## 中文简介

@carouseldeck/反应为回放18所建:无头.

## 安装

```sh
npm install @carouseldeck/react-18
```

也可以使用：`pnpm add @carouseldeck/react-18`、`yarn add @carouseldeck/react-18`、`bun add @carouseldeck/react-18`

## README

# @ carouseldeck/ 反应-18

`@carouseldeck/react` 18号反应,19号反应 它拥有 相同的组件,道具和类型,来自同源.

在反应18上,安装它代替 `@carouseldeck/react` 从 `@carouseldeck/react-18`在反应19上, `@carouseldeck/react` 保留软件包 仅针对 React 19 的应用程序; 在依赖时安装此程序 需要继续前进。 其出版版本与 `@carouseldeck/react`从1.2.0.

## 如何建造它

来源于 `packages/react/src` 为反应19而写,此软件包 不改变它。 反应19号货船 和以前一样, 大小一样 此软件包的构建( E)`vite.config.ts`)使来源适应 运行在反应 18,和反应 19:

-   `src/react.ts` 预备 `react`。 。 。 . `use` 读取上下文 `Provider`,上下文在React 19上作为自己的提供者或单独的 一个在反应18,和 `useLayoutEffect` 实值 `useEffect` 在服务器上,在哪里 反应18警告. 正在开发中,它报告一个反射 超过18 或19个.
    
-   `src/jsx-runtime.ts` 预备 `react/jsx-runtime`。 。 。 . `inert` 作为 反应 18需要它,在反应 19 上留下一个人,它知道它是一个布尔 已经。 甲板的,我们.. `<style>` 元素在取景口前转换, 1 每个甲板,因为 既不通过 React 自己的资源来建起它们 API 及其 CSS 设定为 HTML, 因此两个版本的服务器渲染器都没有 逃脱 `>`。 。 。 .
    
    消费者的过往 `inert` 到甲板原始应该通过 `inert={true}` (或 `inert` 这一点在反应18和19上是正确的. 从不 `inert=""`: 反应19 `inert` 作为一个布尔道具和一个空的 字符串为 falsy, 因此它去除属性, 不留下元素 惰性,如同 `@carouseldeck/react`。 。 。 .
    
-   源头的每个组件都包裹在 `forwardRef` (单位:千美元)`src/with-ref.ts`, (中文(简体) ), 这样 `ref` 到达它的元素的方式 `forwardRef` 通过它,在两个 各个版本.
    

软件包没有 `react-server` 条目: 本建筑不载运 React 19's 服务器组件也一样.

## 测试

`pnpm test:react-18` 构建此软件包, 然后按类型检查一个消费者 (单位:千美元)`test/consumer.tsx`)与回放18's类型. 然后运行回放软件包 在反应 18 上对建筑进行测试`vitest.react-18.config.ts` 在回购 root),此软件包本身的测试在 `test/`。 。 。 . `pnpm test:react-19` 运行 与 React 19 类型相同的类型检查, 然后在 React 上相同的测试 同一建筑的19个`vitest.react-19.config.ts`)别名改为 反应19 工作空间已有 `@carouseldeck/react`。测试 特定于一个版本的自有怪异 被排除于另一个版本的运行,由 名称,在其配置.

## 常见问题

### @carouseldeck/react-18 是什么？

@carouseldeck/反应为回放18所建:无头\.

### 如何安装 @carouseldeck/react-18？

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

### @carouseldeck/react-18 支持 TypeScript 吗？

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

### @carouseldeck/react-18 支持 ESM 还是 CommonJS？

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

### @carouseldeck/react-18 可以商用吗？

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

### @carouseldeck/react-18 的下载量有多少？

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

### @carouseldeck/react-18 还在维护吗？

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

