Pachetul @tracio/angular încapsulează nucleul @tracio/sdk și expune primitive Angular idiomatice: un provider pe care îl adaugi în configurația aplicației și un serviciu bazat pe signal-uri pe care îl injectezi oriunde.
npm install @tracio/angular @tracio/sdk@angular/core (17, 18 sau 19) este o peer dependency și se presupune că este deja instalat în aplicația ta.
Adaugă provideTracio(config) în ApplicationConfig.providers.
// app.config.tsimport { provideTracio } from "@tracio/angular"export const appConfig: ApplicationConfig = { providers: [provideTracio({ publicKey: "5ca175fc…" })],}Pentru a servi scriptul de pe propriul subdomeniu, transmite endpoint în configurație, de exemplu endpoint: "https://metrics.yoursite.com" — consultă Domenii personalizate.
Injectează TracioService pentru a citi starea de identificare prin signal-uri readonly:
| Membru | Tip | Descriere |
|---|---|---|
visitorId() | Signal<string | null> | Identificatorul stabil al vizitatorului. |
result() | Signal<TracioResult | null> | Rezultatul complet al identificării. |
error() | Signal<TracioError | null> | Ultima eroare, dacă există. |
isLoading() | Signal<boolean> | Dacă o preluare este în curs. |
getVisitorData() | metodă | (Re)preluarea datelor vizitatorului imperativ. |
// home.component.tsimport { Component, inject } from "@angular/core"import { TracioService } from "@tracio/angular"@Component({ selector: "app-home", template: `<span>{{ tracio.visitorId() }}</span>` })export class HomeComponent { readonly tracio = inject(TracioService)}Apelează getVisitorData() pentru a amâna sau a redeclanșa identificarea — de exemplu doar după ce utilizatorul își dă consimțământul.
// app.config.tsimport { provideTracio } from "@tracio/angular"export const appConfig: ApplicationConfig = { providers: [provideTracio({ publicKey: "5ca175fc…" })],}// home.component.tsimport { Component, inject } from "@angular/core"import { TracioService } from "@tracio/angular"@Component({ selector: "app-home", template: `<span>{{ tracio.visitorId() }}</span>` })export class HomeComponent { readonly tracio = inject(TracioService)}@tracio/sdk pe care se construiește serviciul