Si je ne prévois pas d'utiliser des bibliothèques JS autres que jQuery, y a-t-il une raison d'avoir besoin de l'appel de Drupal à jQuery.noConflict () qui supprime $ comme alias pour jQuery?
En supposant qu'il n'est pas nécessaire de supprimer l'alias $, existe-t-il un moyen de le récupérer universellement sans avoir à encapsuler mon code jQuery dans (fonction ($) {...})?
La solution que j'ai trouvée est la suivante:
En haut du premier fichier JS que j'inclus dans mon thème personnalisé, je mets simplement la ligne suivante:
$ = jQuery;
Terminé :)
Non, vous ne pouvez pas (eh bien, vous pourriez probablement, mais vous ne devriez pas).
Peut-être qu'à un moment donné, votre module sera utilisé sur un autre projet sur un autre site, puis ce site utilisera une autre bibliothèque JS (N'oubliez pas, chaque module drupal que vous écrivez est automatiquement GPL et votre client peut utiliser comme bon leur semble).
Ce n'est pas si compliqué d'ajouter ces deux lignes à chaque fichier js :)
Cela pourrait également être une solution possible, si vous avez tendance à utiliser des modules pour ce type de questions.
Ce module permet aux développeurs d'utiliser $ pour accéder à la bibliothèque jQuery au lieu d'avoir à appeler explicitement jQuery ou à utiliser des fermetures spéciales dans Drupal 7. Tout ce que vous avez à faire est de l'activer.