如何添加自定义 HTML 标签 TSX

How to add custom HTML tag TSX

尝试在 JSX 中呈现自定义 HTML 标记 <my-element> 时显示错误 属性 在类型 'JSX.IntrinsicElements'

上不存在

我找到了一些如何使用

做到这一点的例子
declare global {
  interface IntrinsicElements {
    "my-element": any
  }
}

但这产生了另一个错误:

ES2015 module syntax is preferred over custom TypeScript modules and namespaces @typescript-eslint/no-namespace

我发现 link 到 Typescript guide 对我帮助很大:

主要思想是创建一个扩展名为 d.ts 的新文件(例如 myModule.d.ts),其中应包含以下内容

export as namespace JSX;

export interface IntrinsicElements {
  "my-element": any;
}