我正在尝试使用Google Analytics。您加载的Google js会在gapi
dom对象中添加window
变量。
对TypeScript进行编码时,并没有抱怨gapi
对象上不存在window
这一事实。
我正在尝试检测gapi
文件是否已加载,如果没有,则从我的脚本中动态加载它。
GAPI没有我能找到的类型定义,所以我试图弄清楚如何检查它是否已加载到DOM中。我已经能够通过Chrome上的控制台和jQuery检查它的(非)存在,所以要么是一个选项。只是无法弄清楚如何在TypeScript中执行此操作,因为它根本不知道gapi
。
如果您尚未使用Google Analytics js库。它会返回window.gapi
和gapi
引用,供您在code
/ DOM
答案 0 :(得分:3)
要让TypeScript知道您要使用的添加内容:
interface Window {
gapi: any;
}
或更短的:
declare var gapi: any;
您可以选择充实定义。
这应该允许您使用gapi,包括在您的检测脚本中:
if (typeof gapi === 'undefined') ...