8
votes

Devrais-je charger entièrement JQuery Ui JS / CSS ou uniquement les parties dont j'ai besoin sur une certaine page?

Je sais ce que beaucoup d'entre vous diront. C'est une question stupide, ou peut-être que ce n'est pas le bon forum, ni dépend de l'application, etc.

Je me demande simplement si j'ai un thème personnalisé, que je pourrais changer à l'avenir, c'est une bonne idée de séparer l'interface utilisateur JQuery, je veux dire les classes JS et CSS dans des morceaux plus petits (fichiers comme goutte goutte à dos, etc.) et Incluez uniquement celui que j'ai besoin sur certaines pages ou les conserver ensemble et chargez l'UI entière sur chaque page. Les deux ont des positifs et des négatifs. Je ne suis tout simplement pas sûr qui est meilleur.

Quelle est votre opinion. Toute approche différente possible?


0 commentaires

4 Réponses :


2
votes

Je pense que ce sera mieux si vous chargez tout entier JQuery UI JS / CSS, car si vous voulez faire quelque chose de nouveau dans JQuery, vous devez redevenir ces pièces qui seraient nécessaires pour faire ce genre de choses et vous devez faire des efforts supplémentaires pour mettre ces morceaux de code dans votre fichier JS, donc je pense que chargement de la totalité de la jQuery sera une meilleure approche !!


0 commentaires

1
votes

Chargez l'ensemble de l'UI JQuery UI et CSS, mais assurez-vous que le JS ne contient que les modules dont vous avez besoin.

IE. Si vous n'utilisez pas de dragge ou de récupérable nulle part sur votre site, n'incluez pas!

Même si vous ne faites pas chaque module sur chaque page, les performances avantages que vous obtiendrez de la mise en cache de la totalité de JS sur la première page Hit (par opposition à plusieurs fichiers plus petits différents sur plusieurs pages) et de moins de demandes HTTP (une grande fichier vs beaucoup de petits fichiers) le compensera.


0 commentaires

1
votes

Pas une question stupide, c'est le bon forum, mais cela dépend de la demande!

Je pense que la meilleure solution en général pour vous assurer de minimiser les demandes et la taille des fichiers téléchargés par le client, mais garantissons en même temps que vous le dev. Peut remplacer facilement et modifier les parties du code et assurez-vous que votre client reçoit ces mises à jour.

à cette fin, ce dont vous avez besoin est une combinaison de processus de déploiement et de processus côté serveur qui combine automatiquement les scripts / CSS, mais vous permet également de casser le cache du client, lorsque ces actifs sont modifiés. Vous devriez également répondre autant que possible d'un CDN. De plus, vous devez vous assurer que votre serveur Web a expiré les en-têtes fixés sur ces actifs.

Selon le cadre secondaire STR. Certaines d'entre elles pourraient être manipulées pour vous.

Par exemple, voici comment github fait (l'a fait?) avec des rails https://github.com/blog/551-Optimisation -Assète-groupage-et-serving-with-rails


0 commentaires

5
votes

Mon opinion personnelle est que si vous voulez rester à jour à l'avenir, il serait beaucoup plus facile garder le < un href = "http://jqueryui.com/" rel = "nofollow"> jQuery ui fichiers complets , sinon à l'avenir, vous devrez passer du temps au fractionnement du nouveau temps. versions.

S'il y a des fonctionnalités, vous savez que vous connaissez ne et ne sera pas utiliser, vous pouvez supprimer ceux lors de la Télécharger en sélectionnant simplement les fonctionnalités que vous utiliserez.

Je pense aussi que l'heure de chargement serait insignifiante, une fois que le navigateur a chargé le script, il est susceptible de le mettre en cache une copie de sorte qu'un utilisateur ne rechargne pas le script avec chaque page. Plus le serveur ne doit servir que deux fichiers, au lieu des frais généraux pour servir potentiellement plusieurs fichiers.

Cela aidera également au développement futur de votre script de votre site dans le sens Si vous souhaitez ajouter une fonctionnalité supplémentaire à votre script, vous n'aurez pas besoin de vous rappeler si vous avez chargé les fichiers de pièces JS / CSS requis.


0 commentaires