Skip to main content
Version: 2.x

API Reference > @next-core/brick-types > ContextConf

ContextConf interface

上下文(数据)配置

Signature:

export interface ContextConf

Remarks

上下文类似于编程语言中的*变量*的概念,提前声明,按需赋值或修改,然后在需要的地方读取它。

Example

定义方式一(自由变量):

context:
- name: myContext
# 初始 `value` 可以使用占位符。
value:
quality: good

# 初始 `value` 是可选的。
- name: myAnotherContext

定义方式二(异步 Resolve 的自由变量):

context:
- name: myAsyncContext
resolve:
useProvider: my.any-provider
# 默认将使用 Provider 返回的数据作为该 Context 的值(brick_next >= 1.25.2 支持)。
# 如果需要转换数据,注意需使用 transform 后的 value 值。
transform:
# `CTX.myAsyncContext` 的值将是 `DATA.hostname`。
value: "<% DATA.hostname %>"

定义方式三(绑定构件属性):

bricks:
- brick: my.source-brick
context:
- name: myContextRelatedToProp
# 绑定构件属性的方式实际存储的是引用关系,在消费时实时获取。
property: sourceProp

Properties

PropertyTypeDescription
ifstring | boolean条件配置,根据 if 的计算结果来决定是否启用该上下文。不适用于绑定构件属性的数据。
namestring上下文(数据)名称。
onChangeBrickEventHandler | BrickEventHandler[]当数据发生变化时触发的事件。注意,该事件仅适用于自由变量或异步处理的数据,不适用于绑定构件属性的数据。
propertystring要绑定的构件属性名。
resolveResolveConf异步处理配置。如需 transform,将使用转换后的结果的 value 字段作为值。
valueunknown自由变量类型的上下文的值。