web-dev-qa-db-fra.com

Rails pipeline de ressources: méthode standard pour inclure tous / vendor / assets / javascripts /?

J'ai fait la transition d'une application vers Rails 3.1 (et maintenant sur 3.2) et j'ai regardé Railscast sur le pipeline d'actifs . J'ai déplacé tous mes tiers Fichiers plugin jquery dans le répertoire/vendor/assets/javascripts/Dans mon /app/assets/javascripts/application.js, j'ai les éléments suivants:

//= require jquery
//= require jquery_ujs
//= require_tree .
//= require_self

J'ai réalisé le require_tree . call charge uniquement l'arborescence du répertoire/app/assets/javascripts /. (Est-ce correct?) Quelle est la meilleure façon d'inclure tous les javascripts "du vendeur"? (Je ne suis pas inquiet de commander à ce stade.) Bien sûr, je pourrais les exiger ligne par ligne dans /app/assets/javascripts/application.js. Mon autre idée était de créer /vendor/assets/javascripts/vendor_javascripts.js avec ce qui suit:

//= require_tree .

Et puis dans /app/assets/javascripts/application.js, ajoutez ce qui suit:

//= require vendor_javascripts

Cela semble cependant un peu maladroit. Existe-t-il un meilleur moyen d'inclure automatiquement tous les javascripts "vendeur" (et/ou "lib")?

PS. J'ai vu à propos des fichiers index.js , mais je pourrais éventuellement me retrouver avec plusieurs fichiers nommés index.js, non? Oh, et j'ai essayé de redémarrer mon serveur tout au long.

53
robertwbradford

Vous pouvez ajouter quelque chose comme ça dans votre app/assets/javascripts/application.js fichier pour inclure tous les javascripts du fournisseur:

//= require_tree ../../../vendor/assets/javascripts/.
73
Dylan Markow

Je sais que c'est une vieille question, mais vous pouvez créer un fichier manifeste sur le dossier vender/assets/javascript:

 #vendor/assets/javascripts/my_jquery_plugins/manifest.js
 # require_tree .

Et en vous application.js:

 //= require my_jquery_plugins/manifest.js

Si vous utilisez Rails 4, nommez le manifest.js comme index.js et dans votre application.js:

//= require my_jquery_plugins

C'est moins hacky que le chemin relatif décrit.

21
lcguida