import{ax as i,z as a,A as t,b2 as n}from"./chunks/framework.DkLJC2NO.js";const c=JSON.parse('{"title":"FlowState","description":"","frontmatter":{},"headers":[],"relativePath":"runtime-api/core/flowState.md","filePath":"runtime-api/core/flowState.md"}'),l={name:"runtime-api/core/flowState.md"};function e(p,s,h,k,r,d){return t(),a("div",null,[...s[0]||(s[0]=[n(`
FlowState 是 @tmagic/core 的流程状态类,用于控制事件动作流程的执行。
new FlowState()| 属性 | 类型 | 说明 |
|---|---|---|
isAbort | boolean | 当前流程是否已中止 |
返回:
{void}详情:
中止当前流程。调用后 isAbort 变为 true,后续的事件动作将不再执行。
示例:
import { FlowState } from '@tmagic/core';
const flowState = new FlowState();
// 在某个条件下中止流程
if (shouldStop) {
flowState.abort();
}
// 检查是否已中止
if (flowState.isAbort) {
console.log('流程已中止');
}返回:
{void}详情:
重置流程状态,将 isAbort 恢复为 false。
示例:
flowState.reset();
console.log(flowState.isAbort); // falseFlowState 常用于控制事件动作链的执行流程:
import App, { FlowState } from '@tmagic/core';
const app = new App({ /* options */ });
// 创建流程状态
const flowState = new FlowState();
// 执行代码块时传入流程状态
await app.runCode('validateCode', {}, [], flowState);
// 如果验证失败,代码块内部可以调用 flowState.abort()
// 后续的动作将不会执行
if (!flowState.isAbort) {
await app.runCode('submitCode', {}, [], flowState);
}