ribaunt/widget-react adresinde gönderir — manuel DOM olay bağlama gerekmez. Sarmalayıcı ayrıca dinamik içe aktarmayı dahili olarak ele alır, böylece Next.js App Router bileşeninde kullanırken bile SSR koruma kalıbı hakkında endişelenmeniz gerekmez.
Widget, Web Crypto API’sine dayanır ve bu nedenle güvenli bir bağlam gerektirir. Üretimde
https:// ve yerel geliştirme sırasında http://localhost kullanın. Düz yerel ağ HTTP URL’leri bazı tarayıcılarda başarısız olabilir.React sarmalayıcısını kullanma (önerilen)
ribaunt/widget-react’tan RibauntWidget’ı içe aktarın ve JSX’inizin herhangi bir yerine yerleştirin. Her yapılandırma seçeneği türlenmiş bir prop olarak mevcuttur ve her widget olayı bir on* geri çağrısına eşlenir.
Next.js App Router kullanıyorsanız, dosyanın en üstüne
'use client' ekleyin — ayrıntılar için Next.js entegrasyon kılavuzu sayfasına bakın.İmperatif tutamaç (ref)
Kendi kodunuzdanreset(), getState() veya startVerification() çağrılarını yapmak için RibauntWidgetHandle olarak türlenmiş bir ref iletin — örneğin, özel bir düğmeden doğrulamayı tetiklemek veya başarısız bir form gönderiminden sonra sıfırlamak için.
| Yöntem | Açıklama |
|---|---|
startVerification() | İş kanıtı çözümünü programatik olarak başlatır. |
reset() | Widget’ı başlangıç durumuna döndürür. |
getState() | Mevcut widget durum dizesini veya widget henüz monte edilmemişse '' döndürür. |
Canlı prop güncellemeleri
React sarmalayıcısı, aşağıdaki prop’ları montaj sonrası temel web bileşenine senkronize eder — bu değerlerden herhangi biri değiştiğinde widget’ı yeniden monte etmeniz (örneğin
key değiştirerek) gerekmez:challengeEndpointverifyEndpointautoVerifyshowWarningwarningMessagesolveTimeoutdisabled
key değiştirerek yeniden monte etmeyi zorladıysa, bu geçici çözümü güvenle kaldırabilirsiniz.Ham web bileşenini kullanma
DOM olay dinleyicileri üzerinde tam kontrol istediğiniz gelişmiş durumlar için, web bileşenini bir yan etki içe aktarmasıyla kendiniz kaydedebilir ve JSX’te doğrudan<ribaunt-widget> kullanabilirsiniz. Ribaunt hem HTMLElementTagNameMap hem de JSX.IntrinsicElements için TypeScript bildirimleri gönderir, böylece her iki şekilde de tür güvenliği elde edersiniz.
Sunucu tarafında oluşturulan bir ortamda ham web bileşeni yaklaşımını kullanırken, SSR sırasında çalışmasını önlemek için içe aktarmayı kendiniz korumalısınız (örneğin bir
useEffect içinde). ribaunt/widget-react sarmalayıcısı bunu otomatik olarak yönetir, bu yüzden önerilen yaklaşımdır.