Я установил ng2-pdf-viewer для отображения документов в приложении angular 6.
Чтобы это заработало, мне нужно импортировать PdfViewerModule в FeatureModule
, где я хочу использовать компонент <ng2-pdf-viewer>
.
Проблема в PdfViewerModule
, он вызывает объект Element и Window внутри своих функций и падает при обслуживании node server.js
.
На данный момент мои модули импортируются так:
BrowserModule > AppModule > FeatureModule > PdfViewerModule(declare <ng2-pdf-viewer>)
Обычно я могу решить такие проблемы, импортируя такой конкретный модуль непосредственно в BrowserModule
и снабжая ServerModule
каким-то специально созданным фиктивным модулем, который может объявлять <ng2-pdf-viewer>
фиктивным с тем же именем. Решение, о котором я думал, состоит в том, чтобы импортировать PdfViewerModule
в BrowserModule
напрямую, например так:
BrowserModule(imports PdfViewerModule) > AppModule > FeatureModule
но в этом случае компоненты FeatureModule
не могут получить доступ к <ng2-pdf-viewer>
в своих шаблонах, потому что он не объявлен.
Есть ли способ изолировать PdfViewerModule
от выполнения на стороне сервера, но сохранить его объявления? Может для таких случаев есть совсем другой подход?
Заранее спасибо! :)