Je suis passé à un projet Redux + Immutable JS d'Ember il y a quelques mois et je profite de l'expérience.Où stocker les méta-données d'enregistrement avec Redux et Immutable JS
Un problème I encore n'a pas trouvé une solution intéressante lorsque vous travaillez avec Records stocke des métadonnées pour cet enregistrement.
Par exemple, disons que j'ai un User
enregistrement:
const userRecord = Immutable.Record({
id: null,
name: '',
email: ''
});
Pour le User
, je souhaite également stocker des propriétés telles que isLoading
ou isSaved
. La première solution serait de stocker ceux-ci dans le userRecord
. Bien que ce soit la solution la plus facile de loin, cela me semble faux.
Une autre solution pourrait être de créer une carte User
, qui contient l'enregistrement User
, ainsi que des métadonnées sur l'utilisateur.
Ex.
const userMap = Immutable.Map({
record: Immutable.Record({
id: null,
name: '',
email: ''
}),
isLoading: false,
isSaved: true
});
Je pense que cela est plus élégant, mais je n'aime pas comment toutes les propriétés de l'utilisateur deviennent encore plus profondément imbriquées, afin d'accéder aux propriétés de l'utilisateur devient très bavard. Ce qui me manque le plus chez Ember, c'est de pouvoir accéder facilement aux propriétés du modèle.
Ex. user.get('isSaved')
ou user.get('name')
Est-il possible de recréer quelque chose comme ça avec Redux et Immutable? Comment avez-vous abordé cette situation avant?
_exactement_ ce que je recherchais pour. Je vous remercie! –