How can I stop "property does not exist on type JQuery" syntax errors when using Typescript?
Solution 1:
You could cast it to <any>
or extend the jquery typing to add your own method.
(<any>$("div.printArea")).printArea();
//Or add your own custom methods (Assuming this is added by yourself as a part of custom plugin)
interface JQuery {
printArea():void;
}
Solution 2:
I think this is the most readable solution:
($("div.printArea") as any).printArea();
Solution 3:
You can cast it to
(<any>$('.selector') ).function();
Ex: date picker initialize using jquery
(<any>$('.datepicker') ).datepicker();
Solution 4:
You can also use the ignore syntax instead of using (or better the 'as any') notation:
// @ts-ignore
$("div.printArea").printArea();
Solution 5:
For your example, you'd add this:
interface JQuery{
printArea():void;
}
Edit: oops, basarat is correct below. I'm not sure why I thought it was compiling but I've updated this answer.