Gatsby
Gatsby สร้าง HTML แบบสแตติกในช่วงเวลาสร้างและทำการรีไฮเดรตบนไคลเอนต์ สคริปต์ CDN ต้องโหลดผ่าน API ของเบราว์เซอร์เท่านั้น — gatsby-browser.js คือที่ที่เหมาะสม
@wink/elements npm package ติดตั้งและโหลด CDN bundle พร้อมกับ TypeScript types.
ติดตั้ง
หัวข้อที่มีชื่อว่า “ติดตั้ง”npm install @wink/elementsโหลดผ่าน gatsby-browser.js
หัวข้อที่มีชื่อว่า “โหลดผ่าน gatsby-browser.js”API onClientEntry จะทำงานครั้งเดียวทันทีที่ runtime ของ Gatsby เริ่มต้นในเบราว์เซอร์:
import { load } from '@wink/elements';
export function onClientEntry() { load({ clientId: process.env.GATSBY_WINK_CLIENT_ID });}ตัวแปรสภาพแวดล้อม
หัวข้อที่มีชื่อว่า “ตัวแปรสภาพแวดล้อม”Gatsby จะเปิดเผยเฉพาะตัวแปรที่ขึ้นต้นด้วย GATSBY_ ให้กับ bundle ฝั่งเบราว์เซอร์:
GATSBY_WINK_CLIENT_ID=your-client-idGATSBY_WINK_CLIENT_ID=your-client-idใช้ในหน้าและคอมโพเนนต์
หัวข้อที่มีชื่อว่า “ใช้ในหน้าและคอมโพเนนต์”import React from 'react';
export default function HotelsPage() { return ( <main> <wink-content-loader layout="HOTEL" id="YOUR_LAYOUT_ID" /> <wink-lookup /> </main> );}TypeScript
หัวข้อที่มีชื่อว่า “TypeScript”Gatsby ใช้ React ดังนั้นให้เพิ่มการประกาศ JSX intrinsic เดียวกับที่ใช้ใน React integration:
// ดูไฟล์ประกาศเต็มได้ที่ /integrations/reactgatsby-ssr.js — ไม่ต้องแก้ไข
หัวข้อที่มีชื่อว่า “gatsby-ssr.js — ไม่ต้องแก้ไข”คุณไม่จำเป็นต้องแก้ไข gatsby-ssr.js แท็ก <wink-*> จะเรนเดอร์เป็น HTML ธรรมดาในผลลัพธ์แบบสแตติก และสคริปต์ CDN จะอัปเกรดแท็กเหล่านี้เมื่อเบราว์เซอร์โหลดหน้า