Cette question est plus sur comprendre le point de vue d'autres personnes dans d'autres avoir une application plus évolutive ember.js et de préciser quelle serait la meilleure approche pour faire face à ce genre de situation.ember.js modèles sensibles
J'ai un modèle appelé posts.hbs
et je présente une structure totalement différente pour mobile et bureau.
Cependant, toutes les fonctionnalités sont les mêmes, ce qui signifie que dans mes contrôleurs, les mêmes actions et les fonctions appelées sur le bureau sont appelés mobile.
Pour vérifier si l'utilisateur accède au site avec un appareil de bureau ou portable, je l'utilisateur la condition suivante sur mon modèle:
{{#if dekstop}}
{{!-- desktop structure (about 250 lines!) --}}
{{else}}
{{!-- mobile structure (about 250 lines!) --}}
{{/if}}
Le problème ici est que, parce que les deux structures mobiles et de bureau évolue beaucoup de composants et HTML, j'ai un avec plus de 500 lignes. C'est trop grand et il devient confus de maintenir ce code.
Une alternative que je vois est de créer deux modèles différents:
- messages-desktop.hbs
- messages-mobile.hbs
En plus:
- controllers/posts-desktop.js
- contrôleurs/postes-mobiles .js
Et:
- itinéraire/messages-desktop.js
- itinéraire/messages-mobile.js
ensuite sur mes contrôleurs et itinéraires respectifs, je peux appeler mixins contenant toutes les fonctionnalités communes. De cette façon, je garde les fonctionnalités en un seul endroit et je peux avoir mes modèles dans des endroits séparés.
Informations complémentaires:
- J'utilise ember.js 1.11.0
Salut, merci pour la réponse. J'ai déjà envisagé d'utiliser la requête média ici. Je l'utilise en fait dans d'autres parties de l'application mais dans cette page la structure HTML doit être différente. Bien que la solution que j'ai trouvée semble fonctionner correctement, mes préoccupations reposent toujours sur la performance et les meilleures pratiques. Je crois que d'autres développeurs ont fait face à la même situation et je voudrais entendre des plus expérimentés quelles sont nos options ici – iorrah