# @edgeone/vite 中文文档

规范地址：https://npmcn.com/package/%40edgeone/vite/

版本：2\.0\.1
npm 元数据更新时间：2026-08-25T12:42:41.692Z
中文译文更新时间：2026-11-13T06:43:25.288Z
软件包许可：MIT

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

原始 npm 页面：https://www.npmjs.com/package/%40edgeone/vite
原文对照：https://npmcn.com/package/%40edgeone/vite/?lang=original

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

- 包体积（解压后）：90.4 kB，38 个文件
- 模块格式：ES Module
- TypeScript 类型：包内自带
- Node.js 要求：\>=18\.0\.0
- 运行依赖：1 个
- peer 依赖：vite ^7\.0\.0 \|\| ^8\.0\.0
- 首次发布：2026-01-28T08:21:46.886Z
- 最新版本发布：2026-04-17T09:02:12.219Z
- 近 30 天下载量：5467（2026-10-13 至 2026-11-11，npm 官方下载统计）
- 已发布版本数：16（近 12 个月 16 个）

## 中文简介

EdgeOne 通用维特适配器 — 支持Vite SSR, Vike, 和 TanStack Start

## 安装

```sh
npm install @edgeone/vite
```

也可以使用：`pnpm add @edgeone/vite`、`yarn add @edgeone/vite`、`bun add @edgeone/vite`

## README

# @ edgeone/ vite (日语)

用于部署 SSR 应用程序的 Vite 插件适配器 [边缘一页](https://edgeone.ai/products/pages)。在 [@ universal- deplope/ store (英语)](https://github.com/universal-deploy/universal-deploy),有框外支持 **安全部门改革**, (中文(简体) ), **TanStack 启动**,以及 **维琪**。 。 。 .

## 安装

> **说明:** 此包目前为β. 安装 `beta` 标签 :

```bash
npm install @edgeone/vite@beta
```

**同伴依赖 :** 维特7或8.

## 快速启动

### TanStack 启动

```ts
// vite.config.ts
import { defineConfig } from "vite";
import { tanstackStart } from "@tanstack/react-start/plugin";
import { edgeoneAdapter } from "@edgeone/vite";

export default defineConfig({
  plugins: [tanstackStart(), edgeoneAdapter()],
});
```

### 维琪

要求维凯0.4.257。 添加 `server: true` 您的 Vike 配置, 允许 Vike 内置的通用部署集成 :

```ts
// pages/+config.ts
export default {
  server: true,
}
```

```ts
// vite.config.ts
import { defineConfig } from "vite";
import vike from "vike/plugin";
import { edgeoneAdapter } from "@edgeone/vite";

export default defineConfig({
  plugins: [vike(), edgeoneAdapter()],
});
```

### 标准 Vite SSR

```ts
// vite.config.ts
import { defineConfig } from "vite";
import { edgeoneAdapter } from "@edgeone/vite";

export default defineConfig({
  build: { ssr: "src/entry-server.ts" },
  plugins: [edgeoneAdapter()],
});
```

> **安全部门改革条目要求:** 条目文件必须默认导出 a `{ fetch(request: Request): Response | Promise<Response> }` 接口.

## API 密码

### `edgeoneAdapter(options?)`

用于在 [普遍部署](https://github.com/universal-deploy/universal-deploy) 存储.

### 选项

| 选项 | 类型 | 默认 | 说明 |
| --- | --- | --- | --- |
| `outputDir` | `string` | `".edgeone"` | 部署文物输出目录 |
| `verbose` | `boolean` | `false` | 构建时启用动词记录 |

## 如何运作

适配器由6个Vite插件组成:

| 插件 | 来源 | 目的 |
| --- | --- | --- |
| `edgeone:bundle-deps` | 适配器 | 强制捆绑所有 npm 分解( EdgeOne 没有) `node_modules`(中文(简体) ) |
| `compat` | @ universal- deplope/ store (英语) | 自动发现 SSR 条目 `rollupOptions.input` |
| `catchAll` | @ universal- deplope/ store (英语) | 生成一个囊括所有注册条目的虚拟模块 |
| `resolver` | @ universal- deplope/ store (英语) | 解析虚拟模块 ID |
| `edgeone:apply-catch-all` | 适配器 | 将包罗万象的条目添加到安全部门改革构建输入中 |
| `edgeone:output` | 适配器 | 建造后生成 EdgeOne 部署文物 |
| `edgeone:ssr-entry` | 适配器 | 客户端构建后自动触发 SSR 构建( 当 `ssrEntry` 设置) |

适配器是完全框架-不可知的——它读取了Universal Project商店的条目并出自EdgeOne部署文物. 框架(Vike,TanStack Start等)负责在商店中注册自己的可获取条目.

建造完成后 `edgeone:output` 插件 :

1.  SSR 副本 将输出构建到 `<outputDir>/cloud-functions/ssr-node/`
2.  生成桥项( E)`handler.js`转换节点.js `IncomingMessage` 到网络 `Request` (与边缘一页靴子相容)
3.  将静态资产复制到 `<outputDir>/assets/`
4.  生成 `config.json` 含有存储注册条目的路由定义

## 构建输出

```
.edgeone/
├── assets/                  # Client-side static assets
└── cloud-functions/
    └── ssr-node/
        ├── handler.js       # Bridge entry (adapter-generated, IncomingMessage → Request)
        ├── _handler.js      # Catch-all handler (Vite build output)
        ├── server.js        # Framework SSR entry
        ├── assets/          # Server-side chunks
        └── config.json      # EdgeOne Pages route config
```

## 许可证

麻省理工学院

## 常见问题

### @edgeone/vite 是什么？

EdgeOne 通用维特适配器 — 支持Vite SSR, Vike, 和 TanStack Start

### 如何安装 @edgeone/vite？

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

### @edgeone/vite 支持 TypeScript 吗？

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

### @edgeone/vite 支持 ESM 还是 CommonJS？

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

### @edgeone/vite 需要什么版本的 Node\.js？

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

### @edgeone/vite 可以商用吗？

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

### @edgeone/vite 的下载量有多少？

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

### @edgeone/vite 还在维护吗？

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

