上下文 (Context)
服务与混入
Cordis 基于组合式 API 设计,绝大部分上下文属性和方法都挂载在服务上。下面列出了内置服务或标准库提供的属性和方法。你可以像使用实例属性和方法一样使用它们。这些 API 的具体用法在对应的文档页面中有详细介绍,你可以点击对应的链接前往查看。
ctx.bailctx.debouncectx.effectctx.emitctx.eventsctx.extendctx.getctx.httpctx.intervalctx.injectctx.interceptctx.isolatectx.loaderctx.loggerctx.onctx.parallelctx.pluginctx.providectx.reflectctx.registryctx.scopectx.serialctx.serverctx.setctx.timeoutctx.timerctx.throttlectx.waterfall
实例属性
ctx.scope
- 类型:
EffectScope
当前上下文的作用域。
实例方法
ctx.extend(meta)
- meta:
object - 返回值:
this
构造一个以当前上下文为原型的新上下文实例,新实例拥有 meta 上的属性。
ctx.intercept(name, config) 实验性
- name:
string服务名称 - config:
object配置拦截 - 返回值:
this
为 name 服务添加一层配置拦截。返回新的上下文实例。
ctx.isolate(name, label?)
- name:
string服务名称 - label:
symbol隔离域符号 - 返回值:
this
创建一个针对 name 服务的隔离域。返回新的上下文实例。
静态属性
Context.filter
- 类型:
symbol
任何对象如果拥有该属性,它的类型应当是 (ctx: Context) => boolean。
这个函数将用于过滤事件和其他功能的触发上下文。