2017-09-18 3 views

Répondre

2

Observables approche est plus flexible. Il y a beaucoup de nombreuses fonctions que vous pouvez utiliser avec Observables. Ce sera très bon de lire le documentation par vous-même.

Si vous voulez seulement gérer la click et faire des choses de base, il suffit d'utiliser le bouton clic, mais si vous avez besoin de manipulations avec l'événement click et vous pensez que vous avez besoin d'écrire beaucoup plus logique pour que les manipulations (exemple: fire the event only after some time from previous one ou merge votre clic avec d'autres api calls et faire quelques manipulations avec des données entrantes avant de les afficher dans le balisage), regardez d'abord la documentation des Observables, il peut y avoir des méthodes qui peuvent vous aider avec votre implémentation logique.

Ordre d'exécution lorsque trois approches sont appliquées.

const button = $('#btn'); 
 

 
document.getElementById('btn').addEventListener('click',() => console.log('From pure callback')); 
 

 
Rx.Observable.fromEvent(button, 'click') 
 
.subscribe(() => console.log('From observable')); 
 

 
button.on('click',() => console.log('From jQuery callback'));
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<script src='https://unpkg.com/@reactivex/[email protected]/dist/global/Rx.js'></script> 
 
<button id='btn'>Click</button>

+0

Pourquoi utilise-t-on à la fois dans un seul bouton, sur le même événement click? – Jocket

+0

Vous devez seulement utiliser une approche –

+0

Quel est l'ordre d'exécution lorsque les deux sont attachés à un bouton? sur le même événement? – Jocket