Hvordan kan jeg stoppe "property does not exist on type JQuery" syntaksfeil når jeg bruker Typescript?
Jeg bruker bare én linje med jQuery i applikasjonen min:
$("div.printArea").printArea();
Men dette gir meg en Typescript-feil:
Egenskapen 'printArea' finnes ikke på typen JQuery?
Kan noen fortelle meg hvordan jeg kan stoppe at denne feilen dukker opp?
Svar #1
Du kunne caste det til <any> eller utvide jQuery-typingen for å legge til din egen metode.
(<any>$("div.printArea")).printArea();
Eller, legg til dine egne tilpassede metoder (Forutsatt at dette legges til av deg selv som en del av en tilpasset plugin)
declare global {
interface JQuery {
printArea(): void;
}
}
Svar #2
Jeg tror dette er den mest lesbare løsningen:
($("div.printArea") as any).printArea();
Svar #3
Du kan kaste det til
(<any>$('.selector') ).function();
Eksempel: initialisering av datovelger ved bruk av jQuery
(<any>$('.datepicker') ).datepicker();
