Typescript - 类型申明扩展
起因:想要重构原有的基于JQuery项目, 该项目中原来的开发人员扩展了一些JQuery方法,导致@typescript/jquery库中没有这些方法的定义。
解决方法:使用TypeScript的类型申明扩展
代码如下:
export interface JQueryStatic {
}
export interface JQuery {
}
declare global{
let something: any;
interface JQueryStatic{
boo(options? : string) : void;
}
interface JQuery{
foo(options? : {}) : void;
}
}
这样就可以在TS代码中使用:
$('.XXX').foo