миграция от угловой 5 до угловой 7 - PullRequest
0 голосов
/ 15 ноября 2018

Вчера я перенес свое приложение из Angular 5 в Angular 7. В ходе этого процесса я изменил EventSource на EventSourcePolyfill, как это было предложено при запуске приложения. Но с тех пор я сталкиваюсь со странной проблемой. Это то, что я получаю проблему в консоли следующим образом:

ERROR TypeError: Cannot read property 'heartbeatTimeout' of undefined
    at new EventSourcePolyfill (eventsource.js:155)
    at AppFooterComponent.push../src/app/layout/footer/footer.component.ts.AppFooterComponent.connect (footer.component.ts:133)
    at SafeSubscriber._next (footer.component.ts:52)
    at SafeSubscriber.push../node_modules/rxjs/_esm5/internal/Subscriber.js.SafeSubscriber.__tryOrUnsub (Subscriber.js:196)
    at SafeSubscriber.push../node_modules/rxjs/_esm5/internal/Subscriber.js.SafeSubscriber.next (Subscriber.js:134)
    at Subscriber.push../node_modules/rxjs/_esm5/internal/Subscriber.js.Subscriber._next (Subscriber.js:77)
    at Subscriber.push../node_modules/rxjs/_esm5/internal/Subscriber.js.Subscriber.next (Subscriber.js:54)
    at AsyncAction.dispatch (timer.js:31)
    at AsyncAction.push../node_modules/rxjs/_esm5/internal/scheduler/AsyncAction.js.AsyncAction._execute (AsyncAction.js:63)
    at AsyncAction.push../node_modules/rxjs/_esm5/internal/scheduler/AsyncAction.js.AsyncAction.execute (AsyncAction.js:51)

Вот что я сделал в своем коде:

import { EventSourcePolyfill } from 'ng-event-source';

let source = new EventSourcePolyfill('/api/v1/events/register');

Может кто-нибудь подсказать мне, как избавиться от этой проблемы.

Спасибо.

1 Ответ

0 голосов
/ 25 ноября 2018

Вы должны передать дополнительные параметры, как

eventSource = new EventSourcePolyfill(url,
    { heartbeatTimeout: 5000, connectionTimeout: 5000, headers: { 'Authorization': 'Basic foo' }});
...