@edgeone/vite

中文文档
2.0.1发布于 2026/04/17MITTypeScriptES Module近 30 天下载 5467

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

中文使用文档
文档目录11 节
  1. 安装
  2. 快速启动
  3. TanStack 启动
  4. 维琪
  5. 标准 Vite SSR
  6. API 密码
  7. edgeoneAdapter(options?)
  8. 选项
  9. 如何运作
  10. 构建输出
  11. 许可证

@ edgeone/ vite (日语)

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

安装

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

npm install @edgeone/vite@beta

同伴依赖 : 维特7或8.

快速启动

TanStack 启动

// 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 内置的通用部署集成 :

// pages/+config.ts
export default {
  server: true,
}
// 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

// 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?)

用于在 普遍部署 存储.

选项

选项类型默认说明
outputDirstring".edgeone"部署文物输出目录
verbosebooleanfalse构建时启用动词记录

如何运作

适配器由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 共发布 16 个版本,首次发布于 2026/01/28;过去 12 个月发布了 16 个版本。

版本发布日期距今
2.0.1latest2026/04/176 个月前
2.0.0-beta.2beta2026/04/176 个月前
2.0.02026/04/137 个月前
2.0.0-beta.12026/04/137 个月前
1.1.02026/03/187 个月前
2.0.0-beta.02026/03/138 个月前

关于 @edgeone/vite 的常见问题

@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 和提交记录判断。