angular - Web OTP API Özelliği 'code', 'CredentialType' türünde mevcut değil
Web OTP API TypeScript Tipleri sorunu - TypeScript'te Eksik Türler'de açıklanan çözümü uygulamaya çalışıyorum, ancak şu hatayı alıyorum:
Property 'code' does not exist on type 'CredentialType'.
Biri bana bu sorunu anlamamda ve çözmemde yardımcı olabilir mi?
Örnek :
async otpRequest() {
if ('OTPCredential' in window) {
const abortController = new AbortController();
let timer = setTimeout(() => {
abortController.abort();
}, 10 * 1000);
let o: CredentialRequestOptions = {
otp: { transport: ['sms'] },
signal: abortController.signal
};
const content = await navigator['credentials'].get(o);
// here: Property 'code' does not exist on type 'CredentialType'
console.log(content.code)
}).catch(err => {
console.log(err);
});
}
}
Cevap #1
Görünüşe göre CredentialType türü yalnızca PasswordCredential|FederatedCredential|PublicKeyCredential içeriyor
https://github.com/DefinitelyTyped/DefinitelyTyped/blob/master/types/webappsec-credential-management/index.d.ts adresindeki özellikten dolayı
ve eksik OTPCredential büyük olasılıkla eksik, DefinitelyTyped ile takip edilmesi gerekiyor, bu yüzden geçici olarak ekleyerek bir çözüm buldum
interface CredentialType {
code: string
type: string
}
polyfill.d.ts dosyasına.
Ve sorun çözüldü.
