我正在将我的React文件迁移到.tsx
,并遇到了这个问题。
Footer.tsx
const Footer = ({ children, inModal }) => (
<footer className={'(inModal ? " in-modal" : "") }>
<div>
{children}
</div>
</footer>
);
export default Footer;
ParentComponent.tsx
import Footer from 'path/to/Footer';
export class ParentComponent extends React.Component<{ showSomething: (() => void) }> {
render() {
return (
<Footer>
<Button onClick={() => this.props.showSomething()}>Add</Button>
</Footer>
);
}
}
在<Footer>
标签下面有一个红色的下划线,伴随着以下错误信息:
[ts] 类型“{ children: Element; }”不能赋值给类型“IntrinsicAttributes & { children: any; inModal: any; }”。类型“{ children: Element; }”不能赋值给类型“{ children: any; inModal: any; }”。属性“inModal”在类型“{ children: Element; }”中不存在。
我不太确定这是什么意思。如果能提供帮助,将不胜感激。
Footer
组件中给inModal
设置默认值为false
,您是否仍然会收到错误?const Footer = ({ children, inModal = false }) ...
- Tholle