> Faqs > Solucionar TypeError: Cannot read properties of undefined en navigator.clipboard.writeText

Solucionar TypeError: Cannot read properties of undefined en navigator.clipboard.writeText

Tengo el siguiente código Javascript para copiar un texto en el portapales.

navigator.clipboard.writeText(text).then(function() {
    alert('okkkkk.... Texto copiado!');
}).catch(function(err) {
    console.error('upppssssss..... Error al copiar el texto: ', err);
});

me da este error:

TypeError: Cannot read properties of undefined (reading 'writeText') chorme 126

¿Cómo solucionarlo?

Respuestas

¿Dónde estás intentando esto? Ya veo que es en Chrome, pero me refiero más bien el entorno porque creo que el Asynchronous Clipboard API está activo en Chrome desde 2017.

Así que, si no te reconoce writeText Cannot read properties of undefined (reading 'writeText') puede ser más bien porque el API del portapapeles está siendo utilizada en un contexto donde no es compatible, o quizás porque el navegador no está ejecutando el código en un contexto seguro (HTTPS).

Si navigator.clipboard no está definido debe de ser eso. Revisa tu entorno y verifica que estás usando HTTPS.

Si estás desarrollando en local, localhost se considera como https aunque no lo sea. Prueba a usar Localhost a ver q tal.

PAra verificar el soporte puedes hacer algo como esto:

if (!navigator.clipboard) {
    console.error('API del portapapeles no está disponible.');
    alert('API del portapapeles no está disponible en este navegador.');
    
} else {
    // hacer el copiado con el portapapeles...
}
Santiago
571 18 45 21