Naplata obaveštava vašu stranicu o tome šta radi. Pretplatite se pomoću on():
entase.on('checkout.ready', payload => {
console.log('checkout open for', payload.context.eventID);
});Jedan osluškivač po nazivu događaja
on() čuva jedan povratni poziv po nazivu događaja. Registrovanje drugog povratnog poziva za isti naziv zamenjuje prvi – ne dodaje se na njega:
entase.on('checkout.closed', a);
entase.on('checkout.closed', b); // a je uklonjen; izvršava se samo boff() uklanja sve što je registrovano za određeni naziv. Zanemaruje svaki povratni poziv koji mu prosledite, pa off('checkout.closed', b) i off('checkout.closed') rade isto.
Ako više delova vaše stranice treba da reaguje na isti događaj, registrujte jedan povratni poziv i iz njega prosledite reakcije dalje.
Pretplata na više događaja odjednom
Obe metode prihvataju string sa nazivima razdvojenim razmacima ili niz naziva i registruju isti povratni poziv za svaki:
entase.on('checkout.ready checkout.closed', payload => {
console.log(payload.name);
});
entase.off(['checkout.ready', 'checkout.closed']);Sadržaj
Svaki povratni poziv prima jedan objekat:
| Polje | Tip | Opis |
|---|---|---|
name | string | Naziv događaja, koristan kada jedan povratni poziv obrađuje više njih. |
context | object | Sadrži eventID – događaj kojem pripada ova naplata. |
data | object | Detalji specifični za događaj. |
Dostupni događaji
| Naziv | Kada se aktivira |
|---|---|
checkout.ready | Naplata je učitana i spremna za interakciju. Tada klijent preuzima i clientContext koji ste prosledili funkciji book(). |
checkout.closed | Naplata je zatvorena. Klijent uklanja panel ili prozor i čisti pozadinski sloj. |
checkout.consent | Posetilac je odgovorio na obaveštenje o uslovima. data.consent je true kada ih prihvati, a klijent to pamti kako bi se ovaj korak sledeći put preskočio. |
entase.on('checkout.closed', () => {
document.body.classList.remove('checkout-open');
});
entase.on('checkout.consent', payload => {
if (payload.data.consent) console.log('terms accepted');
});Osluškivači ostaju aktivni tokom pojedinačnih rezervacija
Osluškivači pripadaju instanci, a ne rezervaciji. Registrujte ih jednom, nakon kreiranja klijenta, i primenjivaće se na svaki poziv funkcije book(). Koristite payload.context.eventID da biste razlikovali rezervacije:
const entase = new Entase({ pk: 'YOUR_PUBLISHABLE_KEY' });
entase.on('checkout.closed', payload => {
refreshAvailability(payload.context.eventID);
});Pozivanje destroy() zaustavlja sve osluškivače – instanca potpuno prestaje da osluškuje poruke sa naplate.
Poruke iz drugih izvora se zanemaruju
Klijent prihvata samo poruke koje dolaze sa izvora Entase naplate, tako da nepovezani postMessage saobraćaj na vašoj stranici nikada neće stići do vaših povratnih poziva.