Я устанавливаю глобальные пространства имен для своих объектов, явно устанавливая свойство в window
.
window.MyNamespace = window.MyNamespace || {};
TypeScript подчеркивает MyNamespace
и жалуется, что:
Свойство 'MyNamespace' не существует для значения типа 'window' any "
Я могу заставить код работать, объявив MyNamespace
переменную окружения и отбросив window
явность, но я не хочу этого делать.
declare var MyNamespace: any;
MyNamespace = MyNamespace || {};
Как я могу остаться window
там и сделать TypeScript счастливым?
В качестве примечания я нахожу особенно забавным то, что TypeScript жалуется, так как он говорит мне, что он window
имеет тип, any
который определенно может содержать что угодно.