2011-08-22 3 views
3

J'ai créé une application de calendrier en utilisant backbone.js. Quand je le regarde en utilisant le navigateur Chrome la performance est ok mais un peu slugish mais sur l'iPad qui est l'appareil cible, la performance craint.Backbone.js Problèmes de performances. Trop de vues?

Je me demande si j'ai créé trop de vues.

J'ai créé une vue mensuelle, en indiquant les jours de la semaine et les heures de la journée à l'aide d'un Backbone.View pour chaque objet. La vue hourview est liée à l'événement click et les répétitions sont cliquées. Mais dans la vue compte tout cumule, vue 1 mois + vues 35 jours + vues 35 * 16 heures = 596 vues. Est-ce trop?

hour = Backbone.Model.extend({}); 
hours = Backbone.Collection.extend({}); 
hourView = Backbone.View.extend({}); 

day= Backbone.Model.extend({}); 
days= Backbone.Collection.extend({}); 
dayView = Backbone.View.extend({}); 

month = Backbone.Model.extend({}); 
monthView = Backbone.View.extend({}); 

Ceci est ma première fois avec backbone.js donc tout conseil serait utile. Difficile à dire en fonction de ce que vous avez fourni.

Répondre

4

De manière générale, plus l'objet est grand, plus la mémoire est importante, moins la vitesse est grande. Différents effets visuels peuvent être ralentis sur les appareils iOS même si vous n'utilisez pas la transition/transformations native (CSS3).

Je n'aurais pas de vues différentes pour chaque partie du calendrier. C'est exagéré. Je voudrais créer une seule vue de calendrier et l'avoir rafraîchir ses parties si nécessaire.

+0

Merci, je vais essayer de refactoring comme vous l'avez suggéré. –

Questions connexes