Comment utiliser YUI ?

Le cœur d'YUI

Vous pouvez créer plusieurs instances d'YUIGlobal Object. Chacune étant complètement configurable et chargée avec seulement les modules dont vous avez besoin. Dans l'exemple qui suit, on souhaite utiliser le module drag and drop de YUI 3.x :

   
 YUI().use('dd-drop',  function(Y) { 
  // le drag and drop est maintenant disponible
  // Il vous reste à écrire le code permettant de l'utiliser
  } 
Dans une autre instance on souhaite utiliser d'autres modules, par exemple le drag and drop et animation de YUI 3.x :
   
 YUI().use('dd-drop', 'anim',  function(Y) { 
  // le drag and drop est maintenant disponible
  // le module animation est maintenant disponible
  // Il vous reste à écrire le code permettant de les utiliser
  } 
On verra plus tard comment charger les modules de YUI 2.x, et même des modules externes.

La méthode use

Vous l'aurez compris, la méthode use vous permet de sélectionner les modules que vous voulez utiliser dans votre instance YUI. Ainsi vous avez une meilleure maitrise des modules présents dans votre pages, et à quel moment ils doivent l'être.

Le Loader

A partir de la version YUI 3.x la fonctionnalité Loader est intégrée à la YUI Global Object, sa puissance se cache derrière la méthode YUI.use. Si vous demandez un module qui n'est pas déjà chargé sur la page, le Loader charge dynamiquement un exemplaire de ce module (et ses dépendances) pour les rendre disponibles dans la méthode YUI().use().

Lang

Une instance YUI vous permet aussi de disposer d'un ensemble d'utilitaires d'extensions qui sont utilisées dans la bibliothèque YUI, et que vous pouvez utiliser pour vos script. Dans la suite on donne quelque exemples d'utilisation :
// Créer une instance de YUI
var Y = YUI();
//Tester des boolean 
Y.Lang.isBoolean(false); // renvoie true
Y.Lang.isBoolean("true"); // renvoie false, la chaine de caractères "true" n'est pas un boolean
//Tester des nombres
Y.Lang.isNumber(1);  // renvoie true, 1 est un nombre
Pour connaitre l'ensemble des fonctionnalités de Lang cliquez ici pour accéder à l'API.