javascript - parameter - Función opcional de TypeScript en la interfaz
typescript object function (1)
Actualmente hay tres sintaxis que TypeScript permite para las declaraciones de funciones en las interfaces:
Usando su ejemplo de una función de validation
tomando 1 parámetro (de any
tipo) y un valor de retorno boolean
:
validation: {(flag: any): boolean};
o en la sintaxis más nueva:
validation(flag: any) : boolean;
o una alternativa es:
validation: (flag: any) => boolean;
Solución:
así que hacerlo opcional con la sintaxis anterior es fácil:
validation?: {(flag: any): boolean};
con la segunda sintaxis (reciente adición - gracias a @toothbrush
)
validation?(flag: any) : boolean;
o en la tercera sintaxis (como has encontrado):
validation?: (flag: any) => boolean;
¿Es posible crear una interfaz en TypeScript con función opcional?
interface IElement {
name: string;
options: any;
type: string;
value?: string;
validation(any): boolean; // --> should be optional.
}