我看到了。它抱怨什么并不神秘:
警告:验证记忆(…):<;部门>;不能显示为<;的后代;p>;。看见SomeComponent>;p>&燃气轮机;其他组件>;工具提示>;部门。
我是SomeComponent和SomeOtherComponent的作者。但后者使用的是外部依赖项(ReactTooltip中的ReactTooltip)。这可能不是必须的,这是一个外部依赖,但它让我尝试在这里的论点,它是“一些代码,超出了我的控制”
鉴于嵌套组件工作正常(表面上看),我该如何担心这个警告呢?无论如何,我该如何改变这一点(前提是我不想重新实现外部依赖)?有没有更好的设计我还不知道
为了完整起见,下面是SomeOtherComponent的实现。它只呈现this.props.value,悬停时:显示“某些工具提示消息”的工具提示:
类SomeOtherComponent扩展React.Component{
建造师(道具){
超级(道具)
}
render(){
const{value,…rest}=this.props;
return<;span className=“其他组件”>;
<;a href=”“data tip=“一些工具提示消息”{……rest}>;{value}<;/a>;
<;工具提示/>;
<;/span>;
}
}
多谢各位
如果在使用物料界面时发生此错误<;印刷术>https://material-ui.com/api/typography/,则可以轻松更改<;p>到a<;span></通过更改组件的属性值<;印刷术>元素:
<;排版组件={'span'}变体={'body2'}>;
根据排版文件:
组件:用于根节点的组件。使用DOM元素或组件的字符串。默认情况下,它将变体映射到一个良好的默认标题组件
因此,排版正在挑选<;p>作为合理的默认值,您可以更改它。可能会有副作用。。。为我工作