Exposition

Pour la version 2.17 à venir, je commence à modifier le code javascript des plugins que je maintiens — les thèmes y seront peut-être aussi sujets — pour n’exposer, au final, qu’un seul objet, dotclear, dans lequel chaque plugin viendra ajouter ses méthodes et propriétés.

Attention, ça n’est, pour l’instant, que de la partie publique dont il s’agit.

La bonne pratique, pour un plugin ayant du javascript spécifique à Dotclear, est de faire comme suit :

'use strict';

/* Dotclear common object */
var dotclear = dotclear || {};

Object.assign(dotclear, {

// <ici tout les méthodes et propriétés nécessaires au plugin>
maMethode: function(args) {

  // ma fonction

},
maVariable: null,
…

});

Ensuite, là où vous utilisiez maMethode() ou maVariable, il suffit d’utiliser dotclear.maMethode() ou dotclear.maVariable.

C’est plus verbeux, certes, mais côté public on n’a qu’un seul objet attaché au document javascript, dotclear donc. Ça va permettre d’éviter les éventuels conflits avec des librairies tierces, comme certains plugins peuvent en utiliser.

Pour info, la ligne 4 ci-dessus, permet de rester compatible avec les versions antérieures à la future 2.17.

Ajouter un commentaire

Comments can be formatted using the Markdown syntax.

Ajouter un rétrolien

URL de rétrolien : https://open-time.net/trackback/14574

Haut de page