@evjs/server

中文文档
0.3.30发布于 2026/11/14MITTypeScriptES Module构建来源已验证近 30 天下载 2877

Evjs 框架的服务器端运行时间

中文使用文档
文档目录11 节
  1. 特征
  2. 安装
  3. 快速启动
  4. 1. 服务器路由
  5. 2. 服务器函数
  6. 运行时适应器
  7. 节点.js
  8. 获取( Deno/ Bun/ Edge)
  9. 核心 API 软件
  10. 路线
  11. 许可证

@evjs/服务器

服务器运行时间核心 页:1 框架和独立的Hono/fetch apps.

特征

  • 以Hono为基地 ——在您的 React 应用程序的同时建立 RESTful API .
  • 服务器函数支持 - 无缝手柄 "use server" 具有类型安全的函数调用.
  • 标准请求/答复 —— 说 createRoute() 用于简化 API 端点创建的工厂.
  • 多运行时间 ——头等支持 节点.js 和标准的获取运行时间德诺, (中文(简体) ), 阿宝, (中文(简体) ), 云花岗工人) (中文(简体) ).

安装

npm install @evjs/server

快速启动

1. 服务器路由

使用 createRoute() 工厂:

// src/routes/users.ts
import { createRoute } from "@evjs/server";

export const usersRoute = createRoute("/api/users", {
  GET: async (_request) => Response.json([{ id: 1, name: "Alice" }]),
});

这个 path 一定是个 字符串文字 因此,路径定义保持精确 编译时间类型 。 在独立应用程序中明确注册路径 :

// src/app.ts
import { createApp } from "@evjs/server";
import { usersRoute } from "./routes/users.js";

export const app = createApp({ routes: [usersRoute] });

此程序 API 独立于 evjs Framework 文件路径 时间 src/apis/**/api.*; 框架不扫描 createRoute() 声明.

2. 服务器函数

框架项目使用 "use server" 在可达到模块中指令。 这个 生成的服务器条目创建应用程序所属的函数注册并 记录每个发现的导出. .server.ts 建议的命名 公约,而不是发现规则:

// src/posts.server.ts
"use server";

export async function getPosts() {
  // Query DB or third-party API
  return [{ id: 1, title: "Hello World" }];
}

独立应用程序明确登记其功能执行。 一样 注册处可发送自定义 WebSocket 或 IPC 传输的呼叫:

import { createApp, createServerFunctionRegistry } from "@evjs/server";
import { getPosts } from "./posts.server.js";

const serverFunctions = createServerFunctionRegistry();
serverFunctions.register("posts:getPosts", getPosts);

export const app = createApp({ serverFunctions });

注册程序被隔离到每个应用程序,因此在一个过程中的两个应用程序可以安全使用 用于不同执行的相同函数 id.

运行时适应器

节点.js

import { serve } from "@evjs/server/node";
import { app } from "./app";

serve(app, { port: 3001 });

获取( Deno/ Bun/ Edge)

@evjs/server/fetch 提供零配置空应用程序。 当a 独立应用程序拥有路由或服务器功能,导出该应用程序的处理器:

import { app } from "./app.js";

Deno.serve({ port: 3001 }, app.fetch);

发现命名模块导出的工人风格主机可以使用相同的处理器:

import { app } from "./app.js";

export const fetch = app.fetch;
export default { fetch };

核心 API 软件

路线

  • createRoute(path, handler): 创建一个 REST 端点.
  • createApp(options): 主应用工厂.
  • createServerFunctionRegistry(): 为 一种应用程序或自定义运输.

应用程序配置服务器运行时间 API 导出自 @evjs/server 财务报告和审定财务报表 它运行时的子路径。 使用 @evjs/ev 当应用程序需要框架构成时 例如文件路由发现、服务器功能转换、SSR/PPR/RSC构建 鉴定、清单或部署文物.

许可证

麻省理工学院

版本与发布记录

@evjs/server 共发布 97 个版本,首次发布于 2026/03/24;过去 12 个月发布了 97 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
0.3.30latest2026/11/14今天
0.3.30-alpha.1alpha2026/11/122 天前
0.3.30-alpha.02026/11/113 天前
0.2.18legacy2026/11/0212 天前
0.3.292026/11/0113 天前
0.3.282026/10/3114 天前

关于 @evjs/server 的常见问题

@evjs/server 是什么?

Evjs 框架的服务器端运行时间

如何安装 @evjs/server?

在项目目录运行 npm install @evjs/server,或使用 pnpm add / yarn add / bun add。

@evjs/server 支持 TypeScript 吗?

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

@evjs/server 支持 ESM 还是 CommonJS?

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

@evjs/server 可以商用吗?

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

@evjs/server 的下载量有多少?

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

@evjs/server 还在维护吗?

最新版本 0.3.30 发布于 2026/11/14(今天);至今共发布 97 个版本,其中过去 12 个月发布了 97 个;首次发布于 2026/03/24。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。