update batch example

This commit is contained in:
codetypes committed 2024-07-16 19:53:12 +08:00
1 parent 32d994d732
commit b4021e487c
1 file changed
+39 -9
+39 -9
View File
@@ -2,15 +2,45 @@
/* /*
如果有processTree,则先运行prcessTree,如果有返回,则进行后面的针对每个节点运行processNode 如果有processTree,则先运行prcessTree,如果有返回,则进行后面的针对每个节点运行processNode
如果没有定义processTree,则直接针对每个节点运行processNode 如果没有定义processTree,则直接针对每个节点运行processNode
export interface TreeModel {
name: string;
desc?: string;
export?: boolean;
root: NodeModel;
}
export interface NodeModel {
id: number;
name: string;
desc?: string;
args?: { [key: string]: any };
input?: string[];
output?: string[];
children?: NodeModel[];
debug?: boolean;
disabled?: boolean;
path?: string;
}
interface BatchScript {
processTree?(tree: TreeModel, path: string): TreeModel;
processNode?(node: NodeModel, tree: TreeModel): NodeModel;
}
*/ */
({ ({
processTree: (tree) => { processTree: (tree) => {
console.log(`processTree ${tree.name}`); console.log(`processTree ${tree.name}`);
if (tree.name == "hero") { if (tree.name == "hero") {
return tree; return tree;
}
},
processNode: (node, tree) => {
console.log(`processNode ${tree.name}.${node.id}`);
} }
}) },
processNode: (node, tree) => {
console.log(`processNode ${tree.name}.${node.id}`);
if (node.name == "GetPos") {
return null;
}
return node;
},
});