สัปดาห์ที่ 11 State Management และ Data Binding
สไลด์บทเรียน
วัตถุประสงค์
- อธิบายแนวคิด state ใน Front-end Application ได้
- ใช้ Data Binding เพื่อเชื่อมข้อมูลกับ UI ได้
- ใช้ Services หรือ Signals/State Management เพื่อจัดการข้อมูลได้เหมาะสม
หัวข้อย่อย
- State คืออะไร
- One-way และ Two-way Data Binding
- Component State
- Shared State
- Angular Services
- Signals หรือแนวคิด Reactive State
- แนวทางจัด state ให้ดูแลต่อได้
เนื้อหา
State คือข้อมูลที่เปลี่ยนแปลงระหว่างการใช้งาน เช่น ค่าฟอร์ม รายการสินค้า สถานะ loading หรือข้อมูลผู้ใช้ หากจัดการ state ไม่ดี แอปจะเริ่มสับสนและแก้ bug ยาก
Data Binding ช่วยให้ UI แสดงผลตามข้อมูลและรับ input จากผู้ใช้ได้สะดวก ส่วน Service ใช้แยก logic และข้อมูลที่ใช้ร่วมกันออกจาก component ทำให้ component เล็กลงและทดสอบง่ายขึ้น
ตัวอย่างแนวคิด
export class CounterComponent {
count = 0;
increase() {
this.count++;
}
}
กิจกรรมในชั้นเรียน
สร้างหน้า Todo หรือ Cart ขนาดเล็กที่มี state และส่งข้อมูลระหว่าง component
ศึกษาค้นคว้านอกเวลา
ศึกษาแนวคิด state management และปรับ Mini Project ให้แยกข้อมูลไว้ใน service
คำถามทบทวน
- State ต่างจาก static content อย่างไร
- Service ช่วยลดความซ้ำซ้อนของ component ได้อย่างไร
- Shared state ควรใช้อย่างระมัดระวังเพราะอะไร
กลับรายวิชา