Frameworks

Erfahre, wie du PrivacyKit aus JavaScript heraus steuerst und in gängige Frameworks integrierst. Mit TypeScript-Unterstützung und praktischen Anleitungen für React, Vue, Angular, Svelte und Next.js.

Inhaltsverzeichnis


Steuere PrivacyKit aus JavaScript

Nutzen Sie window.PrivacyKit, um Einwilligungen zu lesen, Einwilligungsausdrücke zu prüfen, Dialoge zu öffnen und auf Einwilligungsänderungen zu reagieren. Dies ist hilfreich, wenn Ihre Anwendung programmatische Steuerung benötigt, z. B. in React, Vue oder reinem JavaScript.

JavaScript
const api = window.PrivacyKit;

api.onReady(() => {
  const consent = window.PrivacyKit.readConsent();
  const initialState = consent ? JSON.stringify(consent, null, 2) : "";
  console.log(initialState);
});

api.onConsentChanged((consent) => {
  const updatedState = consent ? JSON.stringify(consent, null, 2) : "";
  console.log(updatedState);
});

function handleOpenConsentDialogBtnClick() {
  api.openConsentDialog();
}

function handleOpenPrivacyPolicyDialogBtnClick() {
  api.openPrivacyPolicyDialog();
}

function handleToggleComplianceMonitorBtnClick() {
  api.toggleComplianceMonitor();
}

TypeScript-Unterstützung

Verbessern Sie die Developer Experience mit Autovervollständigung, Typsicherheit und nativer Unterstützung für PrivacyKit Web Components.

tsconfig.json

In modernen Toolchains (Next.js / Vite / TypeScript 5+) müssen .d.ts-Dateien außerhalb von src explizit eingebunden werden, damit der Compiler sie erkennt.

{
  "include": ["src", "types/**/*.d.ts"]
}

Hinweise zu Frameworks

Framework-spezifische Hinweise für die Integration der PrivacyKit-Custom-Elements.

  • React: Binden Sie die TypeScript-Definitionsdatei ein, um PrivacyKit Web Components als native Elemente in JSX zu nutzen.
  • Vue 3: Konfigurieren Sie compilerOptions.isCustomElement für PrivacyKit-Tags.
  • Angular: Fügen Sie CUSTOM_ELEMENTS_SCHEMA dort hinzu, wo Custom Elements verwendet werden.
  • Svelte: Kein zusätzliches Setup zur Laufzeit erforderlich.
Next.js-Hinweis
  • <consent-dialog> funktioniert in Server Components — füge es direkt in dein Layout ein.
  • Um die JS-API (onConsentChanged, onReady usw.) zu verwenden, rufe sie innerhalb von useEffect in einer 'use client'-Komponente auf.