Files
deepseek-harness/website/zh-CN/api/cordis/context.md
2026-07-09 16:07:58 +08:00

2.2 KiB
Raw Blame History

Context

上下文对象是 Cordis 的核心。所有服务、方法、属性都通过 ctx 访问。

服务与混入

Context 基于组合式 API 设计,大部分属性和方法挂载在服务上。以下是核心 API

实例属性

ctx.fiber

当前上下文的作用域对象。

实例方法

ctx.extend(meta)

  • meta: object
  • 返回值: Context

构造一个以当前上下文为原型的新上下文实例。

ctx.intercept(name, config)

  • name: string 服务名称
  • config: object 配置拦截
  • 返回值: Context

为指定服务添加一层配置拦截,返回新的上下文实例。

ctx.isolate(name, label?)

  • name: string 服务名称
  • label: symbol 隔离域符号(可选)
  • 返回值: Context

创建一个针对指定服务的隔离域,返回新的上下文实例。隔离域中的同名服务互不影响。

ctx.get(name)

  • name: string 服务名称
  • 返回值: Service | undefined

获取指定名称的服务实例。

ctx.set(name, value)

  • name: string 服务名称
  • value: any 服务值

设置指定名称的服务。

ctx.provide(name, value?, options?)

  • name: string 服务名称
  • value: any 初始值(可选)
  • options: object
  • 返回值: void

声明一个服务。声明后其他插件可以通过 inject 依赖它。

静态属性

Context.events

内置事件服务的 symbol key。

Context.current

当前活跃的 Context 实例(在异步链中通过 AsyncLocalStorage 追踪)。