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
Next PageFlowEngine คืออะไร
TIP

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

#FlowEngine คืออะไร?

FlowEngine คือเอนจินพัฒนาส่วนหน้าแบบ no-code และ low-code ที่ NocoBase 2.0 เปิดตัวใหม่ล่าสุดครับ/ค่ะ โดย FlowEngine ผสานรวม Model เข้ากับ Flow เพื่อช่วยให้การจัดการตรรกะส่วนหน้าทำได้ง่ายขึ้น เพิ่มความสามารถในการนำกลับมาใช้ใหม่ และบำรุงรักษาได้ง่ายขึ้น ขณะเดียวกัน ด้วยความสามารถในการตั้งค่าของ Flow ทำให้คอมโพเนนต์ส่วนหน้าและตรรกะทางธุรกิจสามารถตั้งค่าและจัดเรียงได้แบบไม่ต้องเขียนโค้ดครับ/ค่ะ

#ทำไมถึงชื่อ FlowEngine?

เพราะใน FlowEngine คุณสมบัติและตรรกะของคอมโพเนนต์ไม่ได้ถูกกำหนดแบบคงที่อีกต่อไป แต่ถูกขับเคลื่อนและจัดการด้วย Flow ครับ/ค่ะ

  • Flow เปรียบเสมือนกระแสข้อมูล ที่แยกตรรกะออกเป็นขั้นตอน (Step) ที่จัดเรียงอย่างเป็นระบบ และนำไปใช้กับคอมโพเนนต์ทีละขั้นตอนครับ/ค่ะ
  • Engine สื่อถึงการเป็นเอนจินที่ขับเคลื่อนตรรกะและการโต้ตอบของส่วนหน้าครับ/ค่ะ

ดังนั้น FlowEngine = เอนจินตรรกะส่วนหน้าที่ขับเคลื่อนด้วย Flow ครับ/ค่ะ

#Model คืออะไร?

ใน FlowEngine Model คือโมเดลนามธรรมของคอมโพเนนต์ ซึ่งมีหน้าที่รับผิดชอบในเรื่องต่อไปนี้ครับ/ค่ะ

  • จัดการ คุณสมบัติ (Props) และสถานะ ของคอมโพเนนต์
  • กำหนด วิธีการเรนเดอร์ ของคอมโพเนนต์
  • รองรับและดำเนินการ Flow
  • จัดการ การกระจายอีเวนต์ (event dispatching) และ วงจรชีวิต (lifecycles) อย่างเป็นระบบ

กล่าวอีกนัยหนึ่ง Model คือสมองส่วนตรรกะของคอมโพเนนต์ ที่เปลี่ยนคอมโพเนนต์จากองค์ประกอบแบบคงที่ ให้กลายเป็นหน่วยที่สามารถตั้งค่าและจัดเรียงได้อย่างไดนามิกครับ/ค่ะ

#Flow คืออะไร?

ใน FlowEngine Flow คือกระแสของตรรกะที่ทำงานร่วมกับ Model ครับ/ค่ะ โดยมีวัตถุประสงค์เพื่อ:

  • แยกคุณสมบัติหรือตรรกะของอีเวนต์ออกเป็นขั้นตอน (Step) และดำเนินการตามลำดับแบบ Flow
  • สามารถจัดการการเปลี่ยนแปลงคุณสมบัติ รวมถึงการตอบสนองต่ออีเวนต์ได้
  • ทำให้ตรรกะมีความ ไดนามิก สามารถตั้งค่าได้ และนำกลับมาใช้ใหม่ได้ ครับ/ค่ะ

#ทำความเข้าใจแนวคิดเหล่านี้ได้อย่างไร?

ลองจินตนาการว่า Flow คือ กระแสน้ำ ครับ/ค่ะ

  • Step เปรียบเสมือนจุดแวะพักตามเส้นทางของกระแสน้ำ แต่ละ Step จะทำหน้าที่เล็กๆ อย่างหนึ่ง (เช่น การตั้งค่าคุณสมบัติ การเรียกใช้อีเวนต์ การเรียก API) เหมือนกับที่น้ำไหลผ่านประตูน้ำหรือกังหันน้ำแล้วเกิดผลลัพธ์บางอย่างครับ/ค่ะ

  • Flow มีลำดับการทำงาน กระแสน้ำจะไหลไปตามเส้นทางที่กำหนดจากต้นน้ำสู่ปลายน้ำ โดยผ่าน Step ทั้งหมดตามลำดับ เช่นเดียวกัน ตรรกะใน Flow ก็จะถูกดำเนินการตามลำดับที่กำหนดไว้ครับ/ค่ะ

  • Flow สามารถแยกสาขาและรวมกันได้ กระแสน้ำหนึ่งสายสามารถแยกออกเป็นสายเล็กๆ หลายสาย หรือรวมกันเป็นสายเดียวได้ Flow ก็สามารถแยกออกเป็น Flow ย่อยหลายๆ Flow หรือรวมกันเป็นชุดตรรกะที่ซับซ้อนยิ่งขึ้นได้ครับ/ค่ะ

  • Flow สามารถตั้งค่าและควบคุมได้ ทิศทางและปริมาณของกระแสน้ำสามารถปรับได้ด้วยประตูน้ำ เช่นเดียวกัน วิธีการดำเนินการและพารามิเตอร์ของ Flow ก็สามารถควบคุมได้ผ่านการตั้งค่า (stepParams) ครับ/ค่ะ

สรุปโดยเปรียบเทียบ

  • คอมโพเนนต์ เปรียบเสมือนกังหันน้ำ ที่ต้องมีกระแสน้ำมาผลักดันจึงจะหมุนได้
  • Model คือฐานและตัวควบคุมของกังหันน้ำนี้ มีหน้าที่รับกระแสน้ำและขับเคลื่อนให้ทำงาน
  • Flow คือกระแสน้ำนั้นเอง ที่ไหลผ่านแต่ละ Step ตามลำดับ ผลักดันให้คอมโพเนนต์เปลี่ยนแปลงและตอบสนองอย่างต่อเนื่องครับ/ค่ะ

ดังนั้นใน FlowEngine:

  • Flow ทำให้ตรรกะไหลไปอย่างเป็นธรรมชาติเหมือนกระแสน้ำ
  • Model ทำให้คอมโพเนนต์เป็นตัวรองรับและผู้ดำเนินการของกระแสน้ำนี้ ครับ/ค่ะ