logologo
เริ่มต้น
คู่มือ
การพัฒนา
ปลั๊กอิน
API
English
简体中文
日本語
한국어
Deutsch
Français
Español
Português
Русский
Italiano
Türkçe
Українська
Tiếng Việt
Bahasa Indonesia
ไทย
Polski
Nederlands
Čeština
العربية
עברית
हिन्दी
Svenska
เริ่มต้น
คู่มือ
การพัฒนา
ปลั๊กอิน
API
logologo

บทนำ

FlowEngine คืออะไร
ความสัมพันธ์ระหว่าง FlowEngine และปลั๊กอิน
เริ่มต้นใช้งาน
แผนการเรียนรู้

คู่มือ

การลงทะเบียน FlowModel
การสร้าง FlowModel
การเรนเดอร์ FlowModel
โฟลว์เหตุการณ์และการกำหนดค่าของ FlowModel
การคงอยู่ของ FlowModel
วงจรชีวิตของ FlowModel
ระบบบริบทของ FlowModel
กลไกการตอบสนอง: Observable
FlowModel vs React.Component

Definitions

ModelDefinition
FlowDefinition
EventDefinition
ActionDefinition
StepDefinition
Previous Pageกลไกการตอบสนอง: Observable
Next PageModelDefinition
TIP

เอกสารนี้แปลโดย AI หากมีข้อมูลที่ไม่ถูกต้อง โปรดดูเวอร์ชันภาษาอังกฤษ

#FlowModel เทียบกับ React.Component

#การเปรียบเทียบหน้าที่พื้นฐาน

คุณสมบัติ/ความสามารถReact.ComponentFlowModel
ความสามารถในการเรนเดอร์ใช่, เมธอด render() ใช้สร้าง UIใช่, เมธอด render() ใช้สร้าง UI
การจัดการสถานะ (State)มี state และ setState ในตัวใช้ props แต่การจัดการสถานะจะอิงตามโครงสร้าง Model Tree มากกว่า
วงจรชีวิตใช่, เช่น componentDidMountใช่, เช่น onInit, onMount, onUnmount
วัตถุประสงค์การใช้งานสร้างคอมโพเนนต์ UIสร้าง 'Model Tree' ที่ขับเคลื่อนด้วยข้อมูล, เป็นแบบ Flow และมีโครงสร้าง
โครงสร้างข้อมูลComponent TreeModel Tree (รองรับ Parent-Child Model, และการ Fork หลายอินสแตนซ์)
คอมโพเนนต์ลูกใช้ JSX ในการซ้อนคอมโพเนนต์ใช้ setSubModel/addSubModel เพื่อกำหนด Sub-Model อย่างชัดเจน
พฤติกรรมแบบไดนามิกการผูก Event, การอัปเดตสถานะเพื่อขับเคลื่อน UIการลงทะเบียน/ส่ง Flow, การจัดการ Auto Flow
การคงอยู่ของข้อมูล (Persistence)ไม่มีกลไกในตัวรองรับการคงอยู่ของข้อมูล (เช่น model.save())
รองรับการ Fork (การเรนเดอร์หลายครั้ง)ไม่ (ต้องนำกลับมาใช้ใหม่ด้วยตนเอง)ใช่ (createFork สำหรับการสร้างหลายอินสแตนซ์)
การควบคุมโดย Engineไม่มีใช่, ถูกจัดการ, ลงทะเบียน และโหลดโดย FlowEngine

#การเปรียบเทียบวงจรชีวิต

Hook วงจรชีวิตReact.ComponentFlowModel
การเริ่มต้นconstructor, componentDidMountonInit, onMount
การยกเลิกการติดตั้งcomponentWillUnmountonUnmount
การตอบสนองต่ออินพุตcomponentDidUpdateonBeforeAutoFlows, onAfterAutoFlows
การจัดการข้อผิดพลาดcomponentDidCatchonAutoFlowsError

#การเปรียบเทียบโครงสร้างการสร้าง

React:

class MyComponent extends React.Component {
  render() {
    return <div>Hello</div>;
  }
}

FlowModel:

class HelloModel extends FlowModel {
  render() {
    return <div>Hello</div>;
  }
}

#Component Tree เทียบกับ Model Tree

  • React Component Tree: คือโครงสร้างการเรนเดอร์ UI ที่เกิดจากการซ้อนกันของ JSX ในขณะรันไทม์
  • FlowModel Model Tree: คือโครงสร้างเชิงตรรกะที่จัดการโดย FlowEngine ซึ่งสามารถคงอยู่ของข้อมูลได้ (Persist), ลงทะเบียนและควบคุม Sub-Model ได้แบบไดนามิก เหมาะสำหรับการสร้าง Page Block, Action Flow, Data Model และอื่นๆ

#คุณสมบัติพิเศษ (เฉพาะ FlowModel)

ฟังก์ชันคำอธิบาย
registerFlowลงทะเบียน Flow
applyFlow / dispatchEventเรียกใช้/ทริกเกอร์ Flow
setSubModel / addSubModelควบคุมการสร้างและการผูก Sub-Model อย่างชัดเจน
createForkรองรับการนำ Logic ของ Model มาใช้ซ้ำเพื่อเรนเดอร์หลายครั้ง (เช่น แต่ละแถวในตาราง)
openFlowSettingsการตั้งค่าขั้นตอน Flow
save / saveStepParams()Model สามารถคงอยู่ของข้อมูลได้ (Persist) และเชื่อมต่อกับ Backend

#สรุป

รายการReact.ComponentFlowModel
สถานการณ์ที่เหมาะสมการจัดระเบียบคอมโพเนนต์ในเลเยอร์ UIการจัดการ Flow และ Block ที่ขับเคลื่อนด้วยข้อมูล
แนวคิดหลักUI แบบ DeclarativeFlow ที่มีโครงสร้างแบบ Model-Driven
วิธีการจัดการReact ควบคุมวงจรชีวิตFlowModel ควบคุมวงจรชีวิตและโครงสร้างของ Model
ข้อดีEcosystem และ Toolchain ที่หลากหลายมีโครงสร้างที่แข็งแกร่ง, Flow สามารถคงอยู่ของข้อมูลได้ (Persist), และ Sub-Model สามารถควบคุมได้

FlowModel สามารถใช้ร่วมกับ React ได้อย่างสมบูรณ์: โดยใช้ React ในการเรนเดอร์ภายใน FlowModel ในขณะที่ FlowEngine จะเป็นผู้จัดการวงจรชีวิตและโครงสร้างของมัน