LiaWafanyikaji

Paketi

React hooks kwa Lia SDK. Ufunguzi, Lia's state kama hooks, na Lia's buttons zinazohusika wakati komponeni inaundwa.

npm install @lia-labs/sdk @lia-labs/sdk-react

React 18 au 19. Kila kitu kwa @lia-labs/sdk inatumia tena, kwa hiyo uchukua yote hapa.

#App

import { useEffect, useState } from 'react';
import { isLia, mockLia, pay, ready, useBackButton, useClosingConfirmation, useInit, useLanguage, useMainButton } from '@lia-labs/sdk-react';

if (!isLia()) mockLia(); // building in a desktop browser

export function App() {
  const lia = useInit();
  const language = useLanguage();
  const [screen, setScreen] = useState<'home' | 'game'>('home');

  useEffect(() => {
    if (lia.status === 'ready') ready();
  }, [lia.status]);

  useMainButton(screen === 'home' && { text: 'Buy extra lives', onClick: () => pay('extra-lives') });
  useBackButton(screen === 'game' && (() => setScreen('home')));
  useClosingConfirmation(screen === 'game');

  if (lia.status === 'loading') return null;
  if (lia.status === 'error') return <p>Open this app inside Lia.</p>;
  return <h1>Hello, @{lia.result.player.name} ({language})</h1>;
}

#Kushirikiana

KushirikianaInatuma
useInit(options?)`{ hadi: "kutangazwa"
useSignal(value)Yoyote SDK kiasi kama state (kwa useSyncExternalStore).
usePlayer(), useMode()Mteja, na test au live.
useLanguage(), useRtl()Mtu's lugha.
useColorScheme(), useThemeParams()Mvua au kuvunja, na Lia'zilizopita kwa rangi.
useViewport(), useSafeArea(), useContentSafeArea(), useIsFullscreen()Mashape.
useStartParam(), useSoundOn(), useNotificationsAllowed()Mengine wa Lia'kawaida.
useBannerAd(position), useBanner(), useNativeAd()Inaongeza banner wakati inaongezwa ("bottom", "top", au null kwa kila mmoja, na banner na ad ya kawaida sasa.
useLiaEvent(event, handler)Kusikia moja ya Lia'zilizopita mafanikio wakati mfululizo unapewa (kila mengine inatuma handler yako mpya).
useMainButton(options), useSecondaryButton(options)Inaonyeshwa button wakati inaendeleza. options ni { text, onClick, isActive, isProgressVisible, color, textColor, position }; kuzalisha null au false kukabidhi. Matokeo yako mpya onClick inatumia kwa kawaida.
useBackButton(onBack)Inaonyeshwa header'kutoka kwenye mstari wakati mchezo unapewa; null au false hukamata.
useSettingsButton(onOpen)Kuhakikisha katika menyu ya ⋯ wakati inaendeleza.
useClosingConfirmation(enabled?)Kutuma kabla ya kushuka wakati inaendeshwa.
useVerticalSwipesDisabled(disabled?)Kutoka kwa kushuka kwa kushuka't close the sheet while disabled.

#Hali ya kazi

const [busy, setBusy] = useState(false);
useMainButton({
  text: 'Buy',
  isProgressVisible: busy,
  onClick: async () => {
    setBusy(true);
    try { await buy(); } finally { setBusy(false); }
  },
});

#Kutuma kwa kawaida

Makundi ya kushiriki yana kuchukua thamani ya kwanza kutoka SDK kwa kila mchakato, hivyo wana kuchukua kwenye server (na mifano: Kiingereza, kipande, sio kuanzishwa). init() sinaendeleza kwenye browser, kwa kipimo cha kipimo.

Kutafsiri kwa kawaida. Kiingereza kina maana ya kawaida. Kusoma kwa Kiingereza

Aina kusoma kila mfumo, methodi na endpoint.