JSDo c Объявления Typescript: Как автоматически зарегистрировать пользовательские элементы? - PullRequest
0 голосов
/ 27 января 2020

Допустим, у меня есть пользовательское определение элемента, записанное в JavaScript с JSDo c аннотациями:

my-element.js:

/** @element my-element */
export class MyElement extends HTMLElement { }
customElements.define('my-element', MyElement);

и файл объявления, созданный с использованием declaration и allowJs:

my-element.d.ts:

/** @element my-element */
export class MyElement extends HTMLElement { }

Я бы хотел, чтобы машинопись автоматически добавила элемент в HTMLElementTagNameMap.

My Текущий обходной путь для нас - сценарий после сборки, чтобы соединить это с файлом объявления:

echo "declare global { interface HTMLElementTagNameMap { 'my-element': MyElement; } }" >> my-element.d.ts

Есть ли лучший способ сделать это?

...