Skip to content

Gatsby

Gatsby menjana HTML statik semasa binaan dan menghidupkan semula di klien. Skrip CDN mesti dimuatkan hanya dalam API pelayar — gatsby-browser.js adalah tempat yang betul.

Terminal window
npm install @wink/elements

API onClientEntry dijalankan sekali sebaik sahaja runtime Gatsby dimulakan dalam pelayar:

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

Gatsby hanya mendedahkan pembolehubah yang diawali dengan GATSBY_ kepada bundel pelayar:

.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 menggunakan React, jadi tambah deklarasi JSX intrinsic yang sama seperti integrasi React:

src/wink-elements.d.ts
// Lihat /integrations/react untuk fail deklarasi penuh

gatsby-ssr.js — tiada perubahan diperlukan

Section titled “gatsby-ssr.js — tiada perubahan diperlukan”

Anda tidak perlu mengubah gatsby-ssr.js. Tag <wink-*> dirender sebagai elemen HTML biasa dalam output statik, dan skrip CDN akan menaik tarafnya apabila pelayar memuatkan halaman.