【发布时间】:2021-05-16 11:21:49
【问题描述】:
当我试图传递道具时,我收到了这个错误。非常基本的东西。
interface Props extends Omit<React.HTMLAttributes<HTMLElement>, 'color'>, ChakraProps {
handleMoveAll: () => void
}
export const MyWrapper: FC<Props> = (props): JSX.Element => (
<div {...props}>
<IconBox label="Move All" onClick={props.handleMoveAll}>
<MyIcon />
</IconBox>
</div>
)
然后我在其父级上调用组件MyWrapper 发出警告。
export const ParentComp: FC<{}> = (): JSX.Element => {
const myFunction = () => console.log('Hit it')
return (
<MyWrapper handleMoveAll={() => myFunction()}>
<p>Child Component</p>
</MyWrapper>
)
}
警告:React 无法识别 DOM 元素上的
handleMoveAll属性。如果您有意希望它作为自定义属性出现在 DOM 中,请将其拼写为小写handlemoveall。如果您不小心从父组件传递了它,请将其从 DOM 元素中移除。
如果我删除这个handleMoveAll={() => myFunction()},警告就会消失。
有什么想法吗?
【问题讨论】:
标签: javascript reactjs typescript ecmascript-6