Typescript - Добавление печатного текста при использовании полифилла - PullRequest
0 голосов
/ 03 марта 2020

Мне нужно использовать polyfill для добавления заголовков к моим запросам EventSource.

Я обнаружил библиотеку на npm, которая делает это , однако она не имеет никаких типов .

Я использую его как таковой, где у меня было:

const eventSource = new EventSource(appConfig.EVENTS_URL);

Я делаю:

const eventSource = new EventSourcePolyfill(appConfig.EVENTS_URL, {
                headers: {'some': 'header'}
});

Теперь, когда нет наборов, я хочу EventSourcePolyfill расширить EventSource, но для этого нового также обработать это свойство headers.

Я написал это, и оно работает, но не уверен, что это правильный путь:

declare module "event-source-polyfill" {
    class EventSourcePolyfill extends EventSource{
    }
}

// There's already this EventSourceInit interface, I'm assuming by writing this is automatically
// adds to the existing 
interface EventSourceInit {
    headers?: Object
}

Любой совет приветствуется. Есть ли более аккуратный способ - иметь такой интерфейс, как плавающий сам по себе, кажется немного странным - должен ли он / будет ли он яснее внутри блока declare module "event-source-polyfill"?

Спасибо.

...