我已经阅读了现有的答案here和here,但它们似乎已经过时了。
我已经尝试了以下方法来增加按钮组件的类型定义,无论是在单独的键入文件(.d.ts)中还是在react组件本身中,都无济于事。
declare module "@material-ui/core/Button" {
export interface ButtonProps {
to?: string;
}
}
当放入单独的.d.ts文件时,我得到一个'JSX元素类型'Button'没有任何构造或调用签名。'错误。
如果与组件本身放在同一文件中,则编译器只会抱怨属性'to'在类型'IntrinsicAttributes&ButtonProps&{children ?: ReactNode; }',好像什么都没有定义。
所以我想知道当前在material-ui(v3.0.2)中增加组件类型定义的正确方法。
谢谢您的欢呼
答案 0 :(得分:2)
ButtonProps
接口实际上是在@material-ui/core/Button/Button
模块中声明的。组件文件中的以下代码应该可以工作:
declare module "@material-ui/core/Button/Button" {
export interface ButtonProps {
to?: string;
}
}