Где объявить HTMLElementTagNameMap, чтобы получить наборы для угловых элементов?
Я хотел бы получить точные данные для моих угловых элементов, но где я могу разместить HTMLElementTagNameMap
-интерфейс, так что это правильно распознается?
Приведение типа на каждое вхождение работает:
const newCustomElement =
document.createElement('my-custom-element') as NgElement & WithProperties<{foo: 'bar'}>;
Но используя второй метод, упомянутый в Angular.io, объявив HTMLElementTagNameMap
не работает для меня
Как или где я должен использовать это правильно?
1 ответ
Решение
Вы можете создать typings.d.ts
файл в src
папка вашего приложения Angular CLI:
type NgElement = import ('@angular/elements').NgElement;
type WithProperties<T> = import ('@angular/elements').WithProperties<T>;
interface HTMLElementTagNameMap {
'my-custom-element': NgElement & WithProperties<{foo: 'bar'}>;
}