Skip to content

vome-core 为 Service 提供了什么

宿主通过 import … from 'vome-core/server'(或项目别名 /#/server)使用下列能力。

入口

导出用途
vome()宿主入口,回调里 App.bootstrap/shutdown/use,结束自动 start
App生命周期:start / stop / bootstrap / shutdown / use
registerHost / getHostBindings静态绑定宿主基建 + scan打包必用
VomeConfig合并后的配置对象

IoC

导出用途
@Provide()注册 Service
@Inject()属性注入
Ioc.get()取实例
ScopeEnumSingleton / Request / Prototype

路由

导出用途
@Controller()注册控制器 + 可选声明式 CRUD
@Get/@Post/...自定义路由
@Body/@Query/@Param参数校验
@Public()跳过登录
@IgnorePerms()登录但不校权限码
@Use()路由中间件
BaseControllerok() / fail() / excel()

ORM / CRUD

导出用途
DbStoredrizzle 实例
@InjectRepository(table)表 Repository
BaseServiceadd/update/delete/page/...
Repository底层 CRUD
entitySchemas / columnComments校验 + EPS 注释
q / attachCrudRoutesQueryOp 与 CRUD 注册(join 显式 alias + condition

上下文与日志

导出用途
Context.get() / Context({}) / Context.run请求上下文(Admin:adminId;App:userId,见 Context
Logger日志
CommException业务异常
defineAuthMacro定义鉴权 macro

EPS / 文档

导出用途
Eps.admin() / Eps.app()EPS 数据
isEpsEnabled是否开启

租户 / 数据权限

导出用途
isTenantEnabled / noTenant是否开租户;临时关闭租户过滤
normalizeHost / resolveTenantScope按 Host 解析租户
noDataScope / resolveDataScope / applyRowScopes数据权限逃逸与应用
tableHasDepartmentId / applyDataScopeWhere部门字段与 where 拼装

详见 认证与 RBAC

插件 / 模块

导出用途
BasePlugin插件基类
loadPluginClass / loadModuleHandlers / readPluginScript加载插件与模块脚本
pDataPath / pPluginPath / pModulesPath / pModulePath路径工具
ModuleRegistry / microApps / createModuleGateway模块注册、微应用、扩展网关
assertModuleInstallAllowed安装门禁(签/license)
isSeatEnforced / isMarketSigEnforced是否生产席位/签验(SEAT_ENFORCE
attachMarketLicense / fetchOfficialSignedLicenselicense 附着与联网签发
ensureSiteId / syncModuleSeat / startMarketSeatHeartbeat宿主身份与席位

详见 插件 invoke。宿主业务调用类名为 PluginInfoService

Excel

导出用途
buildExcelBuffer列 + 行 → xlsx 二进制
excelResponseHeaders下载响应头
BaseController.excel()返回文件 Response

详见 Excel 导出

即时通讯

Socket.IO 由宿主 src/lib/socket 提供(非 vome-core 导出),见 即时通讯 Socket.IO

宿主基础设施(非 core 导出)

能力文档
Redis CacheStore(含 getdel缓存
一次性 TokenOneTimeTicket
Socket.IO即时通讯
BullMQ 队列任务队列
croner 定时任务定时任务
鉴权 / 日志 / 微应用中间件宿主中间件
AI 统一网关(协议在 vome-core/ai,Gateway 在宿主 modules/aiAI 统一网关
国际化 i18n(工具在 core,业务在宿主 modules/i18n国际化 i18n

使用方式总览

ts
import 'reflect-metadata'
import {
  vome,
  Controller,
  BaseController,
  Inject,
  Provide,
  BaseService,
  InjectRepository,
  Context,
} from 'vome-core/server'

vome(({ App }) => {})

各 API 细节见左侧 vome-core 能力 分节,每节含方法说明与示例。

npm 包

json
{
  "dependencies": {
    "vome-core": "latest"
  }
}

升级 core:改 package.json 版本号 → bun install → 按 changelog 调整业务代码。