Qwik
Модель возобновляемости Qwik означает, что JavaScript выполняется лениво — только при взаимодействии пользователя. Используйте useVisibleTask$, чтобы запускать код, который должен выполняться в браузере, когда компонент становится видимым.
@wink/elements npm package Установите и загрузите CDN-бандл с типами TypeScript.
Установка
Заголовок раздела «Установка»npm install @wink/elementsЗагрузка с useVisibleTask$
Заголовок раздела «Загрузка с 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> );});Использование на странице
Заголовок раздела «Использование на странице»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 intrinsics
Заголовок раздела «TypeScript — объявление JSX intrinsics»Qwik использует собственное пространство имён JSX. Расширьте его в файле деклараций:
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; } }}Переменные окружения
Заголовок раздела «Переменные окружения»Qwik (на базе Vite) предоставляет переменные с префиксом PUBLIC_ в браузер:
PUBLIC_WINK_CLIENT_ID=your-client-id