# @chialab/rna-bundler 中文文档

规范地址：https://npmcn.com/package/%40chialab/rna-bundler/

版本：0\.19\.3
npm 元数据更新时间：2026-06-24T15:18:53.078Z
中文译文更新时间：2026-11-09T12:50:05.088Z
软件包许可：MIT

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

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

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

- 包体积（解压后）：19.2 kB，13 个文件
- 模块格式：ES Module
- TypeScript 类型：包内自带
- Node.js 要求：\>=18
- 运行依赖：11 个
- 首次发布：2021-04-16T07:55:49.621Z
- 最新版本发布：2026-06-24T15:18:52.771Z
- 近 30 天下载量：5627（2026-10-10 至 2026-11-08，npm 官方下载统计）
- 已发布版本数：189（近 12 个月 3 个）

## 中文简介

一个基于 esbuilt 的 JavaScript, CSS 和 HTML 捆绑器.

## 安装

```sh
npm install @chialab/rna-bundler
```

也可以使用：`pnpm add @chialab/rna-bundler`、`yarn add @chialab/rna-bundler`、`bun add @chialab/rna-bundler`

## README

# RNA Bundler 软件

基于 JavaScript、 CSS 和 HTML 捆绑器 [兴建](https://esbuild.github.io/)。 。 。 .

> \[叹息\] RNA cli开发被贬值并停止. 建议在您的项目中直接使用 RNA 插件, 使用 vite, esbuilt, 或其他支持的工具 .

[![NPM](https://img.shields.io/npm/v/@chialab/rna-bundler.svg)](https://www.npmjs.com/package/@chialab/rna-bundler)

## 安装

捆绑是其中的一部分 `@chialab/rna` cli,但可以用作模块.

```sh
npm i @chialab/rna-bundler -D
```

```sh
yarn add @chialab/rna-bundler -D
```

```sh
pnpm add @chialab/rna-bundler -D
```

## 使用量

使用 JS 和 CSS 模块和 HTML 应用程序编译 [`esbuild`](https://esbuild.github.io/)。它可以输出多个模块格式,并可用于构建单个模块或捆绑应用程序的所有依赖性.

请注意,HTML和CSS加载器是分离的插件,需要安装才能工作.

### 通过导入

```js
import { build } from '@chialab/rna';

await build({
    input: 'index.js',
    output: 'dist/esm/index.js',
    // code: '...',
    // rootDir: '.',
    platform: 'browser' // 'node',
    format: 'esm', // 'cjs' 'iife'
    // globalName: '', // global name for iife modules
    sourcemap: true,
    minify: true,
});
```

### 通过 cli

```
rna build [options] [entry...]

Options:
  -C, --config <path>         the rna config file
  -O, --output <path>         output directory or file
  --format <type>             bundle format
  --platform <type>           platform destination
  --bundle                    bundle dependencies
  --minify                    minify the build
  --public <path>             public path
  --target <query>            output targets (es5, es2015, es2020)
  --entryNames <pattern>      output file names
  --chunkNames <pattern>      output chunk names
  --assetNames <pattern>      output asset names
  --clean                     cleanup output path
  --manifest <path>           generate manifest file
  --entrypoints <path>        generate entrypoints file
  --name <identifier>         the iife global name
  --external [modules]        comma separated external packages
  --no-map                    do not generate sourcemaps
  --jsx <mode>                jsx transformation mode (transform, preserve, automatic)
  --jsxFactory <identifier>   jsx pragma
  --jsxFragment <identifier>  jsx fragment
  --jsxImportSource <name>    jsx module name
  -h, --help                  display help for command
```

**样本**

```sh
$ rna build src/index.js --output dist/esm/index.js --format esm
$ rna build src/index.js --output public/index.js --format iife --minify --bundle
$ rna build src/index.css --output public/index.css --minify --bundle
```

### 已知的限制和变通办法

Esbuild 在捆绑时不会合并同一外部来源的导入语句( 见 [3号](https://github.com/chialab/rna/issues/3)) (中文(简体) ). 网包中被消耗的自建捆绑可能会受到错误优化的影响.

**工作周边**  
以下列规则更新网页包配置 :

```js
module.exports = {
    optimization: {
        innerGraph: false,
    },
};
```

## 许可证

**RNA Bundler 软件** 将在 [麻省理工学院](https://github.com/chialab/rna/blob/main/packages/rna-bundler/LICENSE) 执照.

## 常见问题

### @chialab/rna-bundler 是什么？

一个基于 esbuilt 的 JavaScript, CSS 和 HTML 捆绑器\.

### 如何安装 @chialab/rna-bundler？

在项目目录运行 npm install @chialab/rna-bundler，或使用 pnpm add / yarn add / bun add。

### @chialab/rna-bundler 支持 TypeScript 吗？

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

### @chialab/rna-bundler 支持 ESM 还是 CommonJS？

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

### @chialab/rna-bundler 需要什么版本的 Node\.js？

package\.json 的 engines 字段要求 Node\.js \>=18。版本不符时 npm 默认只给出警告，开启 engine-strict 后会拒绝安装。

### @chialab/rna-bundler 可以商用吗？

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

### @chialab/rna-bundler 的下载量有多少？

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

### @chialab/rna-bundler 还在维护吗？

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

