在哪里声明 HTMLElementTagNameMap 以获得 Angular 元素的类型?
Where to declare HTMLElementTagNameMap to get typings for Angular Elements?
我想为我的 Angular 元素获得准确的类型,但是我应该把 HTMLElementTagNameMap
接口放在哪里,这样它才能被正确识别?
在每次出现时都转换类型:
const newCustomElement =
document.createElement('my-custom-element') as NgElement & WithProperties<{foo: 'bar'}>;
但是使用 Angular.io 中提到的第二种方法,通过声明 HTMLElementTagNameMap
对我不起作用。
我必须如何或在哪里正确使用它?
您可以在 Angular CLI 应用程序的 src
文件夹中创建 typings.d.ts
文件:
type NgElement = import ('@angular/elements').NgElement;
type WithProperties<T> = import ('@angular/elements').WithProperties<T>;
interface HTMLElementTagNameMap {
'my-custom-element': NgElement & WithProperties<{foo: 'bar'}>;
}
我想为我的 Angular 元素获得准确的类型,但是我应该把 HTMLElementTagNameMap
接口放在哪里,这样它才能被正确识别?
在每次出现时都转换类型:
const newCustomElement =
document.createElement('my-custom-element') as NgElement & WithProperties<{foo: 'bar'}>;
但是使用 Angular.io 中提到的第二种方法,通过声明 HTMLElementTagNameMap
对我不起作用。
我必须如何或在哪里正确使用它?
您可以在 Angular CLI 应用程序的 src
文件夹中创建 typings.d.ts
文件:
type NgElement = import ('@angular/elements').NgElement;
type WithProperties<T> = import ('@angular/elements').WithProperties<T>;
interface HTMLElementTagNameMap {
'my-custom-element': NgElement & WithProperties<{foo: 'bar'}>;
}