2015-08-08 1 views
2

Mon application de flux affiche les emplacements d'une liste. Lorsque l'utilisateur clique sur un emplacement, il devient "actif". Il ne peut y avoir qu'un seul emplacement actif à la fois.À qui appartient la valeur d'état d'un article?

L'état de l'emplacement doit-il être une propriété de l'emplacement lui-même (par exemple location.active) ou doit-il faire partie de l'état global, par ex. activeLocationId?

+0

Je laisserais un magasin gérer l'emplacement actif: que ce soit la «source de vérité». –

Répondre

2

J'ai écrit plusieurs variantes de l'application. Il est devenu évident que active n'est pas une propriété de l'élément lui-même (location dans ce cas), mais est la propriété de l'interface utilisateur (activeLocationId).

Quelques avantages:

  • source de vérité unique (Vous ne serez pas finir par accident avec deux emplacements actifs).
  • Il n'est pas affecté si une nouvelle liste de localisation est chargée (que la nouvelle liste comprenne ou non l'emplacement actif).
  • Facilite la recherche de l'ID de l'emplacement actif.