我通过显式设置属性为我的对象设置全局命名空间window
。
window.MyNamespace = window.MyNamespace || {};
TypeScript 强调MyNamespace
并抱怨:
“窗口”类型的值上不存在属性“MyNamespace”任何“
MyNamespace
我可以通过声明为环境变量并删除显式性来使代码工作,window
但我不想这样做。
declare var MyNamespace: any;
MyNamespace = MyNamespace || {};
我怎样才能window
留在那里并让 TypeScript 开心呢?
作为旁注,我发现 TypeScript 抱怨特别有趣,因为它告诉我那window
是any
绝对可以包含任何东西的类型。