比如我们要在window上定义 Jim
最简单的方法就是将window强制类型转换成any,但是不推荐!
(window as any).Jim=233;
推荐方法:
在项目中找到*.d.ts 文件 加上以下代码即可:
interface Window { Jim: any; //注意这里如果不写any那么用window.jim是可以的,但是用window.jim.hu 就会报错 }
同样的比如用了JQuery的扩展方法:
$.fn.extend({ cvOffSet() { // target in here should be js obj const _this: any = this; let top = 0; let left = 0; let target = _this[0]; // when target is body it offsetParent will be null,so can match cvWindowTarget while (target.offsetParent) { top += target.offsetTop; left += target.offsetLeft; target = target.offsetParent; } return { top, left, }; } });
那么在ts中使用:
$("#ele").cvOffSet().top
同样要在项目中找到*.d.ts 文件 加上以下代码:
interface JQuery { cvOffSet(): any; //注意这样同样要用any,不然cvOffSet().top后的.top会报错 }