Klienten leveres fra Entase CDN som en enkelt fil. Der er ingen npm-pakke, intet bundle at bygge og ingen afhængighed, der skal holdes opdateret – du får altid den aktuelle version.
<script src="https://js.entase.com/client.js"></script>Indlæsning af scriptet definerer en global Entase-klasse. Det gør ikke andet i sig selv: ingen netværksanmodninger, ingen DOM-ændringer, intet renderet. Alt starter, når du opretter en instans.
Oprettelse af en instans
const entase = new Entase({ pk: 'YOUR_PUBLISHABLE_KEY' });Opret én instans pr. side, og genbrug den for hver hændelse. Konstruktøren registrerer en message-lytter på window og begynder at registrere, hvilken checkout-tilstand dit domæne må bruge, så oprettelse af flere instanser medfører dobbelte lyttere og dobbelte registreringskald uden nogen fordel.
Alle indstillinger har en standardværdi, så new Entase() uden argumenter er gyldig – men uden pk kan klienten ikke bekræfte, at dit domæne må bruge integreret checkout, og falder altid tilbage til et pop op-vindue. Se Checkout-tilstande.
Indlæsning af scriptet asynkront
Hvis du indlæser client.js med async eller defer, findes klassen endnu ikke, når dit inline-script kører. Biblioteket udsender en entase:ready-hændelse på window, når det er indlæst, så vent på den:
<script src="https://js.entase.com/client.js" async></script>
<script>
let entase = null;
const init = () => { entase = new Entase({ pk: 'YOUR_PUBLISHABLE_KEY' }); };
if (typeof Entase !== 'undefined') init();
else window.addEventListener('entase:ready', init);
</script>Det er vigtigt først at kontrollere med typeof: Hvis scriptet allerede er færdigindlæst, er entase:ready allerede blevet udløst, og hvis du lytter efter den, vil du vente for evigt.
Oprydning
I en single-page-applikation skal du kalde destroy(), når visningen, der ejer instansen, afmonteres:
entase.destroy();Dette fjerner de window-lyttere, som klienten har registreret. En destrueret instans kan ikke genbruges – et kald til book() på den logger en fejl og gør intet. Opret i stedet en ny instans.
Content Security Policy
Hvis dit website sender en Content-Security-Policy-header, kræver checkout:
script-src https://js.entase.com– for at indlæse biblioteket.frame-src https://www.entase.com– checkout gengives i en iframe i paneltilstand.connect-src https://www.entase.com– klienten kalder Entase API'et for at fastslå den tilladte checkout-tilstand.
Uden frame-src giver paneltilstand et tomt panel. Uden connect-src mislykkes tilstandsregistreringen, og alle checkouts åbnes som pop op-vinduer.