2010-07-12 2 views
0

Je souhaite connaître la meilleure approche lors de l'utilisation de bibliothèques javascript multiples (et conflictuelles) dans une application rails 3. Avant le conflit js a été soulevée, j'ai utilisé le modèle de application.html.erb pour définir toutes les bibliothèques javascript modèle sur toutes les pages avec:Traitement des bibliothèques javascript conflictuelles dans une application Rails 3

<%= javascript_include_tag :all %> 

je comptais mettre en cache tous les fichiers js dans un seul fichier. Toutefois, lorsque j'ai ajouté une page à l'aide de la bibliothèque mootool js, certaines de mes autres pages se sont rompues et je n'ai pas pu résoudre le problème en modifiant les bibliothèques js. J'ai trouvé une solution en créant un nouveau contrôleur pour les pages qui utilisent la bibliothèque mootool - puis j'ai créé un modèle pour ce contrôleur qui n'utilise pas le modèle d'application que les autres pages (non-mootool) utilisent.

Lorsque vous traitez une bibliothèque en conflit, ai-je besoin de créer un nouveau contrôleur (avec une nouvelle section d'en-tête qui définit les bibliothèques js), ou il existe une meilleure solution.

De plus, est-ce que je ne peux plus mettre en cache toutes les bibliothèques dans un seul fichier? Im pensant que je peux créer un partiel avec toutes les bibliothèques javascript qui ne sont pas en conflit (et les cache) et un lien vers le partiel dans le modèle d'application. Et sur les pages qui utilisent mootools, je vais créer un lien vers cette partie et aussi déclarer la bibliothèque mootool js.

Répondre

0

J'ai été capable de trouver une partie de la réponse en déterrant une vieille école RailsCast où Ryan Bates explique comment choisir une mise en page pour une seule action dans un contrôleur. Trucs de base. La meilleure solution est de résoudre les bibliothèques javascript conflictuelles afin que je n'aie pas besoin d'utiliser plusieurs mises en page.

Questions connexes