在 React 中,是否可以只覆盖 HTML 模板,而不是整个 class?
In React, is it possible to override just the HTML template, not the entire class?
问题中的 class 是来自 Elastic UI - full source 的卡片。如果描述文本包含 div
,则会生成此错误消息:
Warning: validateDOMNesting(...): <div> cannot appear as a descendant of <p>.
与动态选择类型的 OuterElement 不同,<p>{description}</p>
始终是 p
标记。如何在不覆盖整个 class 的情况下仅将模板的 <p>...</p>
部分替换为 <div>...</div>
?
return (
<OuterElement
onClick={onClick}
className={classes}
href={href}
target={target}
rel={secureRel}
{...rest}
>
{optionalBetaBadge}
{optionalCardTop}
<span className="euiCard__content">
<EuiTitle className="euiCard__title">
<span>{title}</span>
</EuiTitle>
<EuiText size="s" className="euiCard__description">
<p>{description}</p>
</EuiText>
</span>
{layout === 'vertical' &&
<span className="euiCard__footer">
{footer}
</span>
}
</OuterElement>
);
不,不覆盖整个class
是不可能的
问题中的 class 是来自 Elastic UI - full source 的卡片。如果描述文本包含 div
,则会生成此错误消息:
Warning: validateDOMNesting(...): <div> cannot appear as a descendant of <p>.
与动态选择类型的 OuterElement 不同,<p>{description}</p>
始终是 p
标记。如何在不覆盖整个 class 的情况下仅将模板的 <p>...</p>
部分替换为 <div>...</div>
?
return (
<OuterElement
onClick={onClick}
className={classes}
href={href}
target={target}
rel={secureRel}
{...rest}
>
{optionalBetaBadge}
{optionalCardTop}
<span className="euiCard__content">
<EuiTitle className="euiCard__title">
<span>{title}</span>
</EuiTitle>
<EuiText size="s" className="euiCard__description">
<p>{description}</p>
</EuiText>
</span>
{layout === 'vertical' &&
<span className="euiCard__footer">
{footer}
</span>
}
</OuterElement>
);
不,不覆盖整个class
是不可能的