2011-08-03 5 views
0

J'ai commencé à utiliser l'observateur de modèle pour développer mes applications jQuery, mais sincèrement, je ne comprends pas les avantages de ce modèle.motif jquery et observateur

Exemple:

myfunctions = { 
    first_function: function() { 
     alert('This is the first function'); 
    }, 
    second_function: function() { 
     alert('This is the second function'); 
    } 
}; 

Maintenant, pourquoi cette méthode:

$(document).bind({ 
    'first_function': myfunctions.first_function, 
    'second_function': myfunctions.second_function 
}); 

$('button').bind('click', function() { 
    $(document).trigger('first_function'); 
}); 

est mieux que cela:

$('button').click(function() { 
    myfunctions.first_function(); 
}); 
+2

Pourquoi avez-vous commencé à l'utiliser avant de comprendre pourquoi? –

Répondre

3

Le modèle d'observation est utile lorsque vous avez quelque chose d ' « intérêt "à d'autres" choses ", mais vous ne savez pas exactement combien ou même ce que ces" choses "pourraient être.

J'ai implémenté le modèle d'observateur il y a quelques années en javascript pour une page de style «tableau de bord», où un certain nombre de commandes (en haut de la page) étaient utilisées par divers panneaux. Ces panneaux devaient être actualisés si un ou plusieurs de ces contrôles avaient leur valeur modifiée. Cela a bien fonctionné, car j'ai pu ajouter de nouveaux panneaux et les mettre en place en tant qu'observateurs de l'un des contrôles «supérieurs» sans que les contrôles aient besoin de connaître les nouveaux panneaux.

0

Eh bien, dans votre cas artificiel, il ne l'est pas.

Lorsque votre code augmente, il est. C'est plus évolutif.