新增 WaitForNode 類別以控制工作流結果完成順序,新增範例圖片、範例工作流

This commit is contained in:
NineKey
2026-01-28 18:12:08 +08:00
parent 905faab0d8
commit 7322e20b62
5 changed files with 35 additions and 0 deletions
+3
View File
@@ -4,6 +4,7 @@ from .loader_node import DynamicTagLoaderJS
from .saver_node import DynamicTagSaver
from .iterator_node import DynamicTagIterator
from .image_info_node import ImageWorkflowExtractor
from .wait_for_node import WaitForNode
# ==============================================================================
# 模組導入與環境檢查
@@ -77,6 +78,7 @@ NODE_CLASS_MAPPINGS = {
"DynamicTagSaver": DynamicTagSaver,
"DynamicTagIterator": DynamicTagIterator,
"WorkflowMetadataReader": ImageWorkflowExtractor,
"WaitForNode": WaitForNode,
}
NODE_DISPLAY_NAME_MAPPINGS = {
@@ -84,6 +86,7 @@ NODE_DISPLAY_NAME_MAPPINGS = {
"DynamicTagSaver": "💾 Dynamic Tag Saver",
"DynamicTagIterator": "🔄 Dynamic Tag Iterator",
"WorkflowMetadataReader": "🔍 Workflow Metadata Reader",
"WaitForNode": "⏳ Wait For",
}
WEB_DIRECTORY = "./web"
Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 431 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 305 KiB

+32
View File
@@ -0,0 +1,32 @@
class AnyType(str):
def __ne__(self, __value: object) -> bool:
return False
any_type = AnyType("*")
class WaitForNode:
"""
強迫工作流等待特定節點執行完畢。
用於控制 ComfyUI 執行的完成順序。
"""
def __init__(self):
pass
@classmethod
def INPUT_TYPES(s):
return {
"required": {
"data_input": (any_type,), # 主要流轉的數據
},
"optional": {
"wait_for": (any_type,), # 必須先完成的目標
}
}
RETURN_TYPES = (any_type,)
RETURN_NAMES = ("data_output",)
FUNCTION = "execute_wait"
CATEGORY = "DynamicTag/FlowControl"
def execute_wait(self, data_input, wait_for=None):
return (data_input,)