【发布时间】:2020-11-18 04:17:18
【问题描述】:
我有 ListItem,我希望您在某些情况下将其设为红色。我创建了样式化的 mui 组件:
function StyledListItem({ hasErrors, ...props }) {
const classes = listItemStyles();
return (
<ListItem
classes={{
root: clsx({
[classes.root]: hasErrors,
}),
selected: clsx({
[classes.selected]: hasErrors,
}),
}}
{...props}
/>
);
}
在这种情况下,我遇到了 ESLint 错误:“道具验证中缺少'hasErrors'”。如果我这样做
function StyledListItem(props: any) {
...
}
我收到警告:React 无法识别 DOM 元素上的 hasErrors 属性。如果您有意希望它作为自定义属性出现在 DOM 中,请将其拼写为小写 haserrors。如果您不小心从父组件传递了它,请将其从 DOM 元素中移除。
如何摆脱“道具验证中缺少'hasErrors'”错误?
【问题讨论】:
-
你能把它放在一个沙箱里,这样你就可以看到你的实现了吗?你的实施是第一个还是第二个?由于第一个从 props 中删除了 hasErrors。
-
codesandbox.io/s/… 由于没有 ESlint,代码框上没有错误,但正如我所说,它不喜欢函数 StyledListItem({ hasErrors, ...props }) 它说缺少“hasErrors”在道具验证中
标签: reactjs material-ui