0.19版本新增功能
上下文存储插件是一个node.js模块,它在其module.exports
上公开了一个函数,该函数可用于创建插件的新实例。该函数返回的对象必须包含以下函数:
功能 | 描述 |
---|---|
ContextStore.open() | 打开存储准备使用 |
ContextStore.close() | 关闭存储 |
ContextStore.get(scope, key, callback) | 从存储中获取值 |
ContextStore.set(scope, key, value, callback) | 在存储中设置值 |
ContextStore.keys(scope, callback) | 获取存储中所有键的列表 |
ContextStore.delete(scope) | 删除给定作用域下的所有键 |
ContextStore.clean(activeNodes) | 清理上下文存储 |
打开存储准备使用。在访问任何存储值之前调用此操作。
返回一个Promise
,当存储准备就绪可供访问时解析。
当运行时停止时调用,因此不会再访问任何键值。
返回一个Promise
,当存储关闭时该Promise会解析。
参数 | 描述 |
---|---|
scope | 键的作用域 |
key | 要返回对应值的键或键数组。 |
callback | 可选 用于调用键值的回调函数 |
key
参数可以是一个标识单个键的字符串,也可以是一个标识多个键的字符串数组,用于返回对应的值。
如果提供了可选的callback
参数,它必须是一个接收两个或更多参数的函数:
function callback(error, value1, value2, ... ) {
}
如果没有提供回调函数,并且存储支持同步访问,get
函数应返回单个键值或键值数组。如果存储不支持同步访问,则应抛出错误。
参数 | 描述 |
---|---|
scope | 键的作用域 |
key | 要设置值的键或键数组。 |
value | 数值或数值数组 |
callback | 可选 设置值时要调用的回调函数 |
key
参数可以是一个标识单个键的字符串,也可以是一个标识多个键的字符串数组。
key |
value |
Action |
---|---|---|
String | Any | Stores value under key |
Array | Array | Stores each element of the value array under the corresponding key value. If value has fewer elements than key , it sets the missing values to null . |
Array | not-Array | Stores value as the value of the first key - uses null for any remaining keys. |
如果提供了可选的callback
参数,当值被存储时将会调用它。它接收一个参数error
,用于指示存储值时遇到的任何错误。
function callback(error) {
}
如果未提供回调函数,且存储支持同步访问,则set
函数应在值存储完成后返回。如果存储不支持同步访问,则应抛出错误。
参数 | 描述 |
---|---|
scope | 要返回的键的作用范围 |
callback | 可选 用于调用键列表的回调函数 |
获取给定作用域下的所有键列表。
如果提供了可选的callback
参数,它必须是一个接收两个或多个参数的函数:
function callback(error, keys) {
}
如果没有提供回调函数,并且存储支持同步访问,keys
函数应返回键的数组。如果存储不支持同步访问,则应抛出错误。
参数 | 描述 |
---|---|
scope | 要删除的作用域 |
参数 | 描述 |
---|---|
activeNodes | 所有仍处于活动状态的节点/流程ID列表 |
返回一个Promise,当存储移除不再需要的任何上下文作用域时,该Promise会解析。activeNodes
列表可用于识别哪些节点和流仍被视为活跃状态。
Node-RED: 面向事件驱动应用的低代码编程平台。
版权所有 OpenJS基金会 及 Node-RED 贡献者。保留所有权利。OpenJS基金会 拥有注册商标并使用商标。有关 OpenJS基金会 的商标列表,请参阅我们的 商标政策 和 商标列表。未在 OpenJS基金会商标列表 中标注的商标™或注册®商标归其各自持有人所有。使用这些商标并不意味着与它们有任何关联或获得其认可。
The OpenJS Foundation | 使用条款 | 隐私政策 | OpenJS基金会章程 | 商标政策 | 商标列表 | Cookie政策