Saltar al contingut

Gatsby

Gatsby genera HTML estàtic en temps de compilació i es rehidrata al client. Els scripts CDN s’han de carregar només en APIs del navegador — gatsby-browser.js és el lloc adequat.

Finestra del terminal
npm install @wink/elements

L’API onClientEntry s’executa una vegada tan bon punt s’inicialitza el runtime de Gatsby al navegador:

gatsby-browser.js
import { load } from '@wink/elements';
export function onClientEntry() {
load({ clientId: process.env.GATSBY_WINK_CLIENT_ID });
}

Gatsby exposa només les variables prefixades amb GATSBY_ al paquet del navegador:

.env.production
GATSBY_WINK_CLIENT_ID=your-client-id
.env.development
GATSBY_WINK_CLIENT_ID=your-client-id
src/pages/hotels.tsx
import React from 'react';
export default function HotelsPage() {
return (
<main>
<wink-content-loader layout="HOTEL" id="YOUR_LAYOUT_ID" />
<wink-lookup />
</main>
);
}

Gatsby utilitza React, així que afegeix les mateixes declaracions intrínseques JSX que la integració de React:

src/wink-elements.d.ts
// Consulta /integrations/react per al fitxer complet de declaracions

No cal modificar gatsby-ssr.js. Les etiquetes <wink-*> es renderitzen com a elements HTML plans a la sortida estàtica, i l’script CDN les actualitza quan el navegador carrega la pàgina.