Qwik
Qwik का resumability मॉडल मतलब जावास्क्रिप्ट आलस्य से चलता है — केवल जब उपयोगकर्ता इंटरैक्ट करता है। ब्राउज़र में कोड चलाने के लिए जो कंपोनेंट दिखाई देने पर निष्पादित होना चाहिए, useVisibleTask$ का उपयोग करें।
@wink/elements npm package TypeScript टाइप्स के साथ CDN बंडल इंस्टॉल और लोड करें।
इंस्टॉल करें
Section titled “इंस्टॉल करें”npm install @wink/elementsuseVisibleTask$ के साथ लोड करें
Section titled “useVisibleTask$ के साथ लोड करें”useVisibleTask$ Qwik का लाइफसायकल हुक है जो केवल ब्राउज़र में जल्दी निष्पादित होने वाला कोड चलाता है। इसे अपने रूट लेआउट में रखें:
import { component$, useVisibleTask$ } from '@builder.io/qwik';import { load } from '@wink/elements';
export default component$(() => { useVisibleTask$(() => { load({ clientId: import.meta.env.PUBLIC_WINK_CLIENT_ID }); });
return ( <main> <Slot /> </main> );});पेज पर उपयोग करें
Section titled “पेज पर उपयोग करें”import { component$ } from '@builder.io/qwik';
export default component$(() => { return ( <main> <wink-content-loader layout="HOTEL" id="YOUR_LAYOUT_ID" /> <wink-lookup /> </main> );});TypeScript — JSX इंट्रिंसिक्स घोषित करें
Section titled “TypeScript — JSX इंट्रिंसिक्स घोषित करें”Qwik अपनी JSX namespace का उपयोग करता है। इसे एक घोषणा फ़ाइल में बढ़ाएं:
import type { WinkContentLoaderAttributes, WinkLookupAttributes, WinkSearchButtonAttributes, WinkAccountButtonAttributes, WinkItineraryButtonAttributes, WinkShoppingCartButtonAttributes, WinkAppLoaderAttributes,} from '@wink/elements';
declare module '@builder.io/qwik' { namespace JSX { interface IntrinsicElements { 'wink-content-loader': WinkContentLoaderAttributes; 'wink-lookup': WinkLookupAttributes; 'wink-search-button': WinkSearchButtonAttributes; 'wink-account-button': WinkAccountButtonAttributes; 'wink-itinerary-button': WinkItineraryButtonAttributes; 'wink-shopping-cart-button': WinkShoppingCartButtonAttributes; 'wink-app-loader': WinkAppLoaderAttributes; } }}पर्यावरण चर
Section titled “पर्यावरण चर”Qwik (Vite-आधारित) ब्राउज़र को PUBLIC_ से शुरू होने वाले वेरिएबल एक्सपोज़ करता है:
PUBLIC_WINK_CLIENT_ID=your-client-id