11484 sujets

JavaScript, DOM et API Web HTML5

Bonjour à tous, J'utilise une bibliothèque JS : Galleria. J'ai donc une balise script dans mon HTML pour importer cette bibliothèque. Tout de suite après j'ai une autre balise script qui importe mon script qui utilise Galleria. Dans ce dernier fichier, j'initialise et utilise donc la bibliothèque avec des trucs du genre :

Galleria.loadTheme();
Galleria.configure();
// etc.
Ca fonctionne très bien. Mon problème arrive quand je lint mon script. Il ne connais pas Galleria et me dis que la variable n'est pas défini, ce que je comprends très bien. Ma question est : comment remanier le code pour que le lint passe sans sortir de warning ? En gros, je ne vois pas comment faire, a part de redéclarer Galleria avec un simple var Galleria; ???
Modifié par MagicCarpet (30 Jan 2015 - 13:21)
Là où il n'a pas tord, c'est que tu ne vérifies pas que Galleria existe, donc si, pour une raison ou pour une autre, l'autre script n'existe pas, ton programme plante, au lieu de ne pas se lancer.

Une proposition parmi d'autres :

(function() {
  var Galleria = Gallerie || {};
  if (Galleria.length === 0) return ;
  
  // --- ton code ---
})();
Alors, tout d'abord, merci pour ta réponse.

Par apport à ton code, ton Gallerie, c'est pas plutôt Galleria ? Il me sort cette erreur (mais avec Galleria ça passe) :

'Gallerie' is not defined.


Et sinon c'est plutôt ça :

(function() {
  var Galleria = Gallerie || {};
  if (Galleria.length === 0) {return;}
  
  // --- ton code ---
})();


EDIT : donc maintenant, si tu sais comment utilisez un getJSON, je veux bien un coup de main sur mon autre post Smiley lol
Modifié par MagicCarpet (30 Jan 2015 - 20:28)