React 19 typescript 添加 typeof Web 组件

问题描述 投票:0回答:1

在 React 18 中,JSX.IntrinsicElements 的类型定义适用于 Web 组件。但升级到19后,即使我可以访问全局类型,下面的类型也不起作用。我该如何修复类型定义以应用类型?

declare global {
  declare class CustomComponent extends HTMLElement {
  }
  interface HTMLElementTagNameMap {
    "custom-component": CustomComponent;
  }
  namespace JSX {
    interface IntrinsicElements {
      "custom-compoenent": React.DetailedHTMLProps<React.HTMLAttributes<CustomComponent>, CustomComponent>;
    }
  }
}
reactjs typescript web-component react-19
1个回答
0
投票

我解决了问题。因为 namaspace JSX 迁移到了 React。上面的代码应该这样改变。


declare module 'react' {
  namespace JSX {
    interface IntrinsicElements {
      'custom-component': React.DetailedHTMLProps<React.HTMLAttributes<CustomComponent>, CustomComponent>;
    }
  }
}
© www.soinside.com 2019 - 2024. All rights reserved.