Gå til indhold

Gatsby

Gatsby genererer statisk HTML ved build-tid og rehydraterer på klienten. CDN-scripts skal kun indlæses i browser-API’er — gatsby-browser.js er det rette sted.

Terminal window
npm install @wink/elements

onClientEntry API’en kører én gang, så snart Gatsbys runtime initialiseres i browseren:

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

Gatsby eksponerer kun variabler med præfikset GATSBY_ til browser-bundtet:

.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 bruger React, så tilføj de samme JSX intrinsic deklarationer som i React-integrationen:

src/wink-elements.d.ts
// Se /integrations/react for den fulde deklarationsfil

gatsby-ssr.js — ingen ændringer nødvendige

Sektion kaldt “gatsby-ssr.js — ingen ændringer nødvendige”

Du behøver ikke ændre gatsby-ssr.js. <wink-*> tags renderer som almindelige HTML-elementer i den statiske output, og CDN-scriptet opgraderer dem, når browseren indlæser siden.