Communauté RSS DEV
Suivre
Comment globalement masquer les champs de devise/montant dans une application React + Rails en fonction des permissions de l'utilisateur ?
Je travaille sur une application construite avec React 19 (frontend) et Ruby on Rails 5.0.7.2 (backend).
L'exigence est de masquer tous les champs de devise/montant dans l'interface utilisateur en fonction des permissions de l'utilisateur.
Le backend fournit un indicateur booléen (par exemple, can_view_amount: true/false) qui indique si l'utilisateur connecté a la permission de voir les champs de montant.Si l'utilisateur n'a pas la permission, alors tous les champs de montant dans toute l'application doivent être masqués.Cela doit être mis en œuvre de manière évolutive et pérenne :Il doit s'agir d'une mise en œuvre unique, et non de quelque chose que nous devons réimplémenter manuellement sur chaque nouvel écran.Même si de nouveaux écrans sont ajoutés à l'avenir et affichent des montants, la même logique doit s'appliquer automatiquement sans que les développeurs n'oublient de la gérer.Question :
Quelle serait la meilleure approche architecturale ou le meilleur modèle de conception pour mettre cela en œuvre ?
Je considère :
Un wrapper/composant global pour afficher les montants (qui vérifie en interne la permission avant le rendu).Une solution de composant d'ordre supérieur (HOC) ou de contexte React pour contrôler la visibilité.Toutes les suggestions côté Rails pour structurer l'indicateur de permission afin qu'il s'intègre proprement au frontend.Quelqu'un a-t-il résolu un problème similaire, et quelle est la manière la plus maintenable de s'assurer que les champs de montant sont constamment masqués dans toute l'application en fonction des permissions ?