Hoppa till innehåll

Gatsby

Gatsby genererar statisk HTML vid byggtid och återaktiverar på klienten. CDN-skript måste laddas endast i webbläsar-API:er — gatsby-browser.js är rätt plats.

Terminal window
npm install @wink/elements

onClientEntry API körs en gång så snart Gatsbys runtime initieras i webbläsaren:

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

Gatsby exponerar endast variabler som börjar med GATSBY_ till webbläsarpaketet:

.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 använder React, så lägg till samma JSX-intrinsic-deklarationer som React-integrationen:

src/wink-elements.d.ts
// Se /integrations/react för hela deklarationsfilen

Du behöver inte ändra gatsby-ssr.js. <wink-*>-taggarna renderas som vanliga HTML-element i den statiska utdata, och CDN-skriptet uppgraderar dem när webbläsaren laddar sidan.