Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

154
Visualizações
Tipo de escritura a máquina para el objeto de evento de cambio de window.matchMedia

Escucho los cambios de window.matchMedia

Tengo este error: Parameter 'event' implicitly has an 'any' type.

¿Qué tipo de TS debo especificar aquí para el objeto de event ?

 const mobileMediaQuery = window.matchMedia("(max-width: 699px)"); mobileMediaQuery?.addEventListener("change", processViewSizeChange); function processViewSizeChange(event) { console.log('media query changed! →', event.matches); }

¿dónde en Internet para buscar tipos globales mecanografiados? en caso de que necesite encontrar algo similar en el futuro.

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Puede usar TypeScript para obtener información sobre los tipos que necesita. Aquí tienes un ejemplo en tu caso. Sabe que necesita proporcionar el tipo de evento de "change" y que necesita proporcionar una función de devolución de llamada para el oyente, pero no está seguro de cómo escribir la función de devolución de llamada, así que déjelo fuera al principio:

 const mobileMediaQuery = window.matchMedia('(max-width: 699px)'); mobileMediaQuery.addEventListener('change', ); /* ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Expected 2-3 arguments, but got 1.(2554) */

Si no incluye el segundo argumento de mobileMediaQuery.addEventListener , obtendrá un diagnóstico de error del compilador como ese.

Pero si está utilizando un IDE que incluye TypeScript Language Server y algo como IntelliSense (por ejemplo, VS Code o TypeScript Playground ), puede pasar el mouse sobre el método addEventListener para ver su firma:

 (method) MediaQueryList.addEventListener<"change">(type: "change", listener: (this: MediaQueryList, ev: MediaQueryListEvent) => any, options?: boolean | AddEventListenerOptions | undefined): void (+1 overload)

Como puede ver en la firma, el listener es el segundo argumento y el tipo del parámetro de evento en el oyente es MediaQueryListEvent . Entonces puedes escribir tu función de oyente así:

 function processViewSizeChange(event: MediaQueryListEvent): void { console.log('media query changed! →', event.matches); }

Código final en TS Playground

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda