Kodax

قائمة مهام مع حفظ محلي — تحدي Dart

منطق قائمة المهام (بأسلوب غير قابل للتغيير): addTask ترجع قائمة جديدة فيها المهمة، و toggleTask تعكس isDone للمهمة ذات المعرّف، و removeTask تحذفها، و completedCount ترجع عدد المهام المنجزة. (يُفحص الكود بنيوياً.)

// نموذج مهمة
class Task {
  String id;
  String title;
  bool isDone;
  Task({required this.id, required this.title, this.isDone = false});
}

// دالة لإضافة مهمة إلى القائمة
List<Task> addTask(List<Task> tasks, String title) {
  // أكمل
  return tasks;
}

// دالة لتبديل حالة الإنجاز
List<Task> toggleTask(List<Task> tasks, String id) {
  // أكمل
  return tasks;
}

// دالة لحذف مهمة
List<Task> removeTask(List<Task> tasks, String id) {
  // أكمل
  return tasks;
}

// دالة لعدد المهام المكتملة
int completedCount(List<Task> tasks) {
  // أكمل
  return 0;
}

حل هذا التحدي يرتبط بفتح دورة «Flutter المتقدم» بحسابك.

ابدأ الحل