Size: a a a

Angular-universal-ru

2020 June 11

VS

Vitaliy Stepanenko in Angular-universal-ru
Ребята помогите разобраться. Задача стоит так: Добавьте мета, чтобы приложение работало как PWA. Я правильно понял что это обыкновенные meta теги. Или этот что-то более глобальное.
источник

nt

nur tlek in Angular-universal-ru
Vitaliy Stepanenko
Ребята помогите разобраться. Задача стоит так: Добавьте мета, чтобы приложение работало как PWA. Я правильно понял что это обыкновенные meta теги. Или этот что-то более глобальное.
ты правильно понял
источник

HM

Hovhannes Matevosyan in Angular-universal-ru
Всем привет

 Подскажите, что используете для объекта document с Angular Universal?
 При запуске npm run serve:ssr  выдает ошибку 'ERROR ReferenceError: document is not defined'

 (при npm run build:ssr ошибок нет)
 
 несмотря на то что везде где нужно обернул блок кода в проверку платформы isPlatformBrowser()
 например:
   
 if (isPlatformBrowser(this.platformId)) {
      document.body.classList.remove('modal-open')
   }
   if (isPlatformServer(this.platformId)) {
      console.log('Server side');
   }

  Кроме того, в файле server.ts добавил
 
  global["window"] = win;
  global["document"] = win.document;
  global["branch"] = null;
  global["object"] = win.object;
 
  но не помогло...
источник

АС

Андрей Сергеевич... in Angular-universal-ru
Hovhannes Matevosyan
Всем привет

 Подскажите, что используете для объекта document с Angular Universal?
 При запуске npm run serve:ssr  выдает ошибку 'ERROR ReferenceError: document is not defined'

 (при npm run build:ssr ошибок нет)
 
 несмотря на то что везде где нужно обернул блок кода в проверку платформы isPlatformBrowser()
 например:
   
 if (isPlatformBrowser(this.platformId)) {
      document.body.classList.remove('modal-open')
   }
   if (isPlatformServer(this.platformId)) {
      console.log('Server side');
   }

  Кроме того, в файле server.ts добавил
 
  global["window"] = win;
  global["document"] = win.document;
  global["branch"] = null;
  global["object"] = win.object;
 
  но не помогло...
зачем вам документ ?
источник

HM

Hovhannes Matevosyan in Angular-universal-ru
Андрей Сергеевич
зачем вам документ ?
Для манипуляции DOM элементов, например добавить или удалить класс, т. д.
источник

АС

Андрей Сергеевич... in Angular-universal-ru
для этого есть рендерер
источник

HM

Hovhannes Matevosyan in Angular-universal-ru
Андрей Сергеевич
для этого есть рендерер
Мне подсказали что проблема может быть в либах загружаемых из вне, т. е. Google или Facebook
источник

АС

Андрей Сергеевич... in Angular-universal-ru
какие проеблемы ?
источник

HM

Hovhannes Matevosyan in Angular-universal-ru
Андрей Сергеевич
какие проеблемы ?
При запуске npm run serve:ssr  выдает ошибку 'ERROR ReferenceError: document is not defined
источник

АС

Андрей Сергеевич... in Angular-universal-ru
так а где документ используется ?
источник

HM

Hovhannes Matevosyan in Angular-universal-ru
Андрей Сергеевич
так а где документ используется ?
Я использовал для addClass или removeClass, но думаю проблема не в моем кода, так как я поместил эту часть в platform Browser
источник

АС

Андрей Сергеевич... in Angular-universal-ru
не самая лучшая идея вообще в ангуляре использовать документ для добавления класса. https://angular.io/api/core/Renderer2 Так как ангуляр может быть на разных платформах специально для этого придумали рендерер
источник

АС

Андрей Сергеевич... in Angular-universal-ru
Если использовать нужный инстуремент то и ошибок будет меньше )
источник

HM

Hovhannes Matevosyan in Angular-universal-ru
Андрей Сергеевич
Если использовать нужный инстуремент то и ошибок будет меньше )
Спасибо, а что делать если проблема не моём кода, а в в каком нибудь либе?
источник

АС

Андрей Сергеевич... in Angular-universal-ru
правильно подключить либу. Так как либо подключенная в ангуляр джейсоне должна корректно отрабатывать. А вообще использовать разные модули для клиента и браузера и в одной использовать ее , а в другой например нет, если это либа имеет документ , как у вас.
источник

HM

Hovhannes Matevosyan in Angular-universal-ru
Андрей Сергеевич
правильно подключить либу. Так как либо подключенная в ангуляр джейсоне должна корректно отрабатывать. А вообще использовать разные модули для клиента и браузера и в одной использовать ее , а в другой например нет, если это либа имеет документ , как у вас.
Спасибо большое
источник

АС

Андрей Сергеевич... in Angular-universal-ru
Hovhannes Matevosyan
Спасибо большое
Рендерер помог ?
источник

HM

Hovhannes Matevosyan in Angular-universal-ru
Андрей Сергеевич
Рендерер помог ?
еше не успел, но отключил пару либов и заработало, кажется напал на след!)
источник
2020 June 12

VS

Vladyslav Shkurenko in Angular-universal-ru
После запуска "npm run prerender" получаю ошибкуЖ
источник

VS

Vladyslav Shkurenko in Angular-universal-ru
Prerendering 2 route(s) to /Users/vshkurenko/Projects/angular-universal-starter-master/dist
Unhandled Promise rejection: R3InjectorError(AppServerModule)[ApplicationModule -> ApplicationRef -> ApplicationInitStatus -> InjectionToken Application Initializer -> [object Object] -> TranslatesService -> InjectionToken REQUEST -> InjectionToken REQUEST -> InjectionToken REQUEST]:
 NullInjectorError: No provider for InjectionToken REQUEST! ; Zone: <root> ; Task: Promise.then ; Value: { NullInjectorError: R3InjectorError(AppServerModule)[ApplicationModule -> ApplicationRef -> ApplicationInitStatus -> InjectionToken Application Initializer -> [object Object] -> TranslatesService -> InjectionToken REQUEST -> InjectionToken REQUEST -> InjectionToken REQUEST]:
 NullInjectorError: No provider for InjectionToken REQUEST!
   at NullInjector.get (/Users/vshkurenko/Projects/angular-universal-starter-master/dist-server/main.js:1:577162)
   at R3Injector.get (/Users/vshkurenko/Projects/angular-universal-starter-master/dist-server/main.js:1:707542)
   at R3Injector.get (/Users/vshkurenko/Projects/angular-universal-starter-master/dist-server/main.js:1:707542)
   at R3Injector.get (/Users/vshkurenko/Projects/angular-universal-starter-master/dist-server/main.js:1:707542)
   at injectInjectorOnly (/Users/vshkurenko/Projects/angular-universal-starter-master/dist-server/main.js:1:575422)
   at Object.ɵɵinject (/Users/vshkurenko/Projects/angular-universal-starter-master/dist-server/main.js:1:575629)
   at Object.TranslatesService_Factory [as factory] (/Users/vshkurenko/Projects/angular-universal-starter-master/dist-server/main.js:1:1213020)
   at R3Injector.hydrate (/Users/vshkurenko/Projects/angular-universal-starter-master/dist-server/main.js:1:710946)
   at R3Injector.get (/Users/vshkurenko/Projects/angular-universal-starter-master/dist-server/main.js:1:707318)
   at injectInjectorOnly (/Users/vshkurenko/Projects/angular-universal-starter-master/dist-server/main.js:1:575422)
 name: 'NullInjectorError',
 ngTempTokenPath: null,
 ngTokenPath:
  [ 'ApplicationModule',
    'ApplicationRef',
    'ApplicationInitStatus',
    'InjectionToken Application Initializer',
    '[object Object]',
    'TranslatesService',
    'InjectionToken REQUEST',
    'InjectionToken REQUEST',
    'InjectionToken REQUEST' ] } NullInjectorError: R3InjectorError(AppServerModule)[ApplicationModule -> ApplicationRef -> ApplicationInitStatus -> InjectionToken Application Initializer -> [object Object] -> TranslatesService -> InjectionToken REQUEST -> InjectionToken REQUEST -> InjectionToken REQUEST]:
 NullInjectorError: No provider for InjectionToken REQUEST!
   at NullInjector.get (/Users/vshkurenko/Projects/angular-universal-starter-master/dist-server/main.js:1:577162)
   at R3Injector.get (/Users/vshkurenko/Projects/angular-universal-starter-master/dist-server/main.js:1:707542)
   at R3Injector.get (/Users/vshkurenko/Projects/angular-universal-starter-master/dist-server/main.js:1:707542)
   at R3Injector.get (/Users/vshkurenko/Projects/angular-universal-starter-master/dist-server/main.js:1:707542)
   at injectInjectorOnly (/Users/vshkurenko/Projects/angular-universal-starter-master/dist-server/main.js:1:575422)
   at Object.ɵɵinject (/Users/vshkurenko/Projects/angular-universal-starter-master/dist-server/main.js:1:575629)
   at Object.TranslatesService_Factory [as factory] (/Users/vshkurenko/Projects/angular-universal-starter-master/dist-server/main.js:1:1213020)
   at R3Injector.hydrate (/Users/vshkurenko/Projects/angular-universal-starter-master/dist-server/main.js:1:710946)
   at R3Injector.get (/Users/vshkurenko/Projects/angular-universal-starter-master/dist-server/main.js:1:707318)
   at injectInjectorOnly (/Users/vshkurenko/Projects/angular-universal-starter-master/dist-server/main.js:1:575422)
(node:33763) UnhandledPromiseRejectionWarning: NullInjectorError: R3InjectorError(AppServerModule)[ApplicationModule -> ApplicationRef -> ApplicationInitStatus -> InjectionToken Application Initializer -> [object Object] -> TranslatesService
источник