Pachetul @tracio/react încapsulează nucleul @tracio/sdk și expune primitive React idiomatice: un provider care montează agentul și hook-uri care vă oferă ID-ul vizitatorului și rezultatul identificării, împreună cu starea de încărcare și de eroare.
npm install @tracio/react @tracio/sdkreact (18 sau 19) este o dependență peer și se presupune că este deja instalată în aplicația dumneavoastră.
Încapsulați aplicația cu <TracioProvider>. Acesta montează agentul TRACIO la primul render și apelează automat tracio.destroy() când providerul se demontează.
import { TracioProvider } from "@tracio/react"
function Root() { return ( <TracioProvider publicKey={process.env.NEXT_PUBLIC_TRACIO_KEY!}> <App /> </TracioProvider> )}| Prop | Tip | Descriere |
|---|---|---|
publicKey | string | Cheia dumneavoastră publică. Copiați-o din dashboard. |
config | TracioConfig | Obiect de configurare complet. Are prioritate față de props-urile scalare simple de mai jos. |
endpoint | string | Endpoint API personalizat (pentru un endpoint proxied first-party). |
scriptUrl | string | URL personalizat pentru scriptul agentului (pentru un endpoint proxied first-party). |
debug | boolean | Înregistrează diagnostice detaliate în consolă. |
timeoutMs | number | Cât timp se așteaptă rezultatul înainte de timeout (implicit 15000). |
children | ReactNode | Obligatoriu — subarborele React de încapsulat. |
Transmiteți fie publicKey împreună cu scalarii simpli, fie un obiect config complet. Când sunt furnizate ambele, config are câștig de cauză.
Returnează identificatorul stabil al vizitatorului împreună cu starea de încărcare și de eroare.
const { data, isLoading, error, isFetched, getId } = useVisitorId()// data: string | undefined — the visitorIdgetId() re-preia ID-ul vizitatorului în mod imperativ.
Returnează întregul TracioResult (ID-ul vizitatorului plus detectarea boților).
const { data, isLoading, error, isFetched, getData } = useTracioResult()// data: TracioResult | undefinedopts.immediate are valoarea implicită true. Transmiteți { immediate: false } pentru a amâna preluarea până când apelați chiar dumneavoastră getData() — util în spatele unui gate de consimțământ:
const { data, getData } = useTracioResult({ immediate: false })
function onConsent() { getData() // identify only after the user opts in}Escape hatch care returnează instanța subiacentă pentru utilizare avansată.
const { tracio } = useTracio()import { TracioProvider, useVisitorId } from "@tracio/react"function App() { return ( <TracioProvider publicKey={process.env.NEXT_PUBLIC_TRACIO_KEY!}> <Page /> </TracioProvider> )}function Page() { const { data: visitorId, isLoading, error } = useVisitorId() if (isLoading) return <span>Loading…</span> if (error) return <span>Error: {error.message}</span> return <span>Visitor: {visitorId}</span>}@tracio/sdk pe care se construiesc hook-urile