В более ранних версиях RC угловых 2 я был в состоянии придать объект окна, добавивКак Inject Окно в угловые 2.1.0
{provide: Window, useValue: window}
Для массива поставщиков.
С обновлением до последней стабильной версии угловой 2 (2.1.0) это сейчас бросает ошибку консоли
compiler.umd.js:14268Uncaught Error: Can't resolve all parameters for LoginComponent: (AuthService, UserMessagesService, ?).
? в списке параметров, где я пытаюсь ввести объект Window.
Я уверен, что вам не нужно вводить объект окна, так как он уже доступен по всему миру в браузере работает JS. – rinukkusu
@rinukkusu Когда я тестирую свои компоненты, я должен быть в состоянии вымогать оконный объект, и при этом я предпочел бы использовать стандартный DI, который дает угловой 2 вместо того, чтобы изменять сам объект окна. Если невозможно ввести собственное окно, я, вероятно, в конечном итоге создам обертку над ним. Я просто надеялся, что мне не нужно, поскольку инъекция Window работает в предыдущей версии. – tt9
Вы можете использовать это с Angular4 https://www.npmjs.com/package/ngx-window-token – maxisam