このドキュメントはAIによって翻訳されました。不正確な情報については、英語版をご参照ください
Reactでは、通常このようにボタンコンポーネントをレンダリングします。
上記のコードはシンプルですが、静的コンポーネントであり、ノーコードプラットフォームが求める設定可能性やオーケストレーション能力には対応できません。
NocoBaseのFlowEngineでは、FlowModelとFlowDefinitionを使って、設定可能でイベント駆動型のコンポーネントを素早く構築し、より強力なノーコード機能を実現できます。
FlowModelはFlowEngineにおけるコアコンポーネントモデルであり、コンポーネントのロジック、レンダリング、設定機能をカプセル化します。FlowModelを通じてインスタンス化され、一元的に管理できます。<FlowModelRenderer />を使ってレンダリングする静的なpropsではなくFlowを使うことで、プロパティの以下の機能を実現できます。
propsの代わりにstepParamsを使用する✅
stepParamsを使用することはFlowEngineが推奨する方法であり、Reactコンポーネントのようなシリアライズ不可能なデータに関する問題を回避できます。
非侵入的な方法でonClickを追加します。
補足説明:
onClickやonMouseEnterなどの異なるイベントに対して、それぞれ異なるイベントフローを登録することで、複雑なビジネス要件に対応できます。モデルを作成する際に、stepParamsを通じてイベントフローのデフォルトパラメーターを設定できます。
Flowはコンポーネントの実装方法を変更するものではありません。単にReactComponentにPropsFlowとEventFlowのサポートを追加し、コンポーネントのプロパティとイベントを視覚的に設定・オーケストレーションできるようにするものです。

以上の3つのステップを通じて、設定とイベントオーケストレーションをサポートするボタンコンポーネントを完成させました。これにより、以下の利点が得られます。
このパターンは、フォーム、リスト、チャートなど、あらゆるUIコンポーネントにも適用できます。NocoBaseのFlowEngineでは、すべてがオーケストレーション可能です。