Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

305
Vistas
Cómo definir el tipo para una devolución de llamada de función (como cualquier tipo de función, no universal) utilizada en un parámetro de método

Actualmente tengo definición de tipo como:

 interface Param { title: string; callback: any; }

Necesito algo como:

 interface Param { title: string; callback: function; }

pero el segundo no está siendo aceptado.

over 4 years ago · Santiago Trujillo
3 Respuestas
Responde la pregunta

0

La Function de tipo global sirve para este propósito.

Además, si tiene la intención de invocar esta devolución de llamada con 0 argumentos e ignorará su valor de retorno, el tipo () => void coincide con todas las funciones que no toman argumentos.

over 4 years ago · Santiago Trujillo Denunciar

0

Typescript de v1.4 tiene la palabra clave type que declara un alias de tipo (análogo a typedef en C/C++). Puede declarar su tipo de devolución de llamada así:

 type CallbackFunction = () => void;

que declara una función que no toma argumentos y no devuelve nada. Una función que toma cero o más argumentos de cualquier tipo y no devuelve nada sería:

 type CallbackFunctionVariadic = (...args: any[]) => void;

Entonces puedes decir, por ejemplo,

 let callback: CallbackFunctionVariadic = function(...args: any[]) { // do some stuff };

Si desea una función que tome un número arbitrario de argumentos y devuelva cualquier cosa (incluido el vacío):

 type CallbackFunctionVariadicAnyReturn = (...args: any[]) => any;

Puede especificar algunos argumentos obligatorios y luego un conjunto de argumentos adicionales (digamos una cadena, un número y luego un conjunto de argumentos adicionales) así:

 type CallbackFunctionSomeVariadic = (arg1: string, arg2: number, ...args: any[]) => void;

Esto puede ser útil para cosas como los controladores de EventEmitter.

Las funciones pueden escribirse con la fuerza que desee de esta manera, aunque puede dejarse llevar y encontrarse con problemas combinatorios si intenta definir todo con un alias de tipo.

over 4 years ago · Santiago Trujillo Denunciar

0

A raíz de la respuesta de Ryan, creo que la interfaz que está buscando se define de la siguiente manera:

 interface Param { title: string; callback: () => void; }
over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda