Moyen correct d’intégrer les plugins jQuery dans AngularJS

Je me demandais quelle est la bonne façon d’intégrer les plugins jQuery dans mon application angular. J’ai trouvé plusieurs tutoriels et scénarios, mais ils semblent adaptés à un plugin spécifique.

Par exemple: http://amitgharat.wordpress.com/2013/02/03/an-approach-to-use-jquery-plugins-with-angularjs/ http://www.youtube.com/watch?v=8ozyXwLzFYs

Devrais-je créer une directive comme ça –

App.directive('directiveName', function() { return { ressortingct: 'A', link: function(scope, element, attrs) { $(element).'pluginActivationFunction'(scope.$eval(attrs.directiveName)); } }; }); 

Et puis dans le html appelle le script et la directive?

 

Merci d’avance

Oui tu as raison. Si vous utilisez un plugin jQuery, ne placez pas le code dans le contrôleur. Créez plutôt une directive et placez le code que vous auriez normalement à l’intérieur de la fonction de link de la directive.

Il y a quelques points dans la documentation que vous pourriez examiner. Vous pouvez les trouver ici:
Pièges courants

Utiliser les contrôleurs correctement

Assurez-vous que lorsque vous référencez le script dans votre vue, vous le référez en dernier – une fois la bibliothèque, les contrôleurs, les services et les filtres angularjs référencés.

EDIT: Plutôt que d’utiliser $(element) , vous pouvez utiliser angular.element(element) lorsque vous utilisez AngularJS avec jQuery

J’ai déjà 2 situations où les directives et les services / usines ne jouaient pas bien.

le scénario est que j’ai (avait) une directive qui a l’dependency injection d’un service, et à partir de la directive je demande au service de faire un appel ajax (avec $ http).

à la fin, dans les deux cas, ng-Repeat ne s’est pas enregistré du tout, même lorsque j’ai donné au tableau une valeur initiale.

J’ai même essayé de faire une directive avec un contrôleur et une scope isolée

Seulement quand j’ai tout déplacé vers un contrôleur et que ça a fonctionné comme par magie.

exemple à ce sujet ici Initialisation du plugin jQuery (RoyalSlider) dans Angular JS