Υποενότητα 13.2: Εφαρμογές Μιας Σελίδας - Πρακτική

Ενημέρωση της dishService

Ενημερώστε τη dishService για να επιστρέψετε ένα συγκεκριμένο  dish ως εξής:

getDish(id: number): Dish {
  return DISHES.filter((dish) => (dish.id === id))[0];
}

Εδώ χρησιμοποιούμε τη μέθοδο filter JavaScript  για να δημιουργήσουμε μια νέα array.

Χρησιμοποιούμε τη συνάρηση βέλους - arrow function για να επιλέξουμε τα στοιχεία από την array που ταιριάζουν με τα κριτήρια που έχουμε καθορίσει. Σε αυτή την περίπτωση, τα κριτήρια είναι ότι το dish.id πρέπει να είναι ίσο και του ίδιου τύπου με το id. Κάθε  Choco-dish έχει μοναδικό id ( μπορείτε να το βρείτε στο dishes.ts) και έτσι κάθε φορά που κάνουμε κλικ σε ένα Choco-dish,θα είναι μόνο ένα Choco-dish που θα πληρεί τα κριτήρια μας, έτσι η array θα έχει μόνο ένα στοιχείο. Ωστόσο, χρησιμοποιούμε το [0] για να καθορίσουμε ότι θέλουμε το πρώτο στοιχείο της array, ώστε να προετοιμαστεί για πιο πολύπλοκες καταστάσεις.

Έτσι, θα εξαγάγουμε αυτό το συγκεκριμένο Choco-dish από αυτή την array  και στη συνέχεια θα επιστρέψουμε - return αυτό το dish από την  getDish method.