我有一个要为自动视觉回归测试(VRT)准备的组件列表,并且设置了一个系统,可以使用ReactDOM.renderToStaticMarkup
单独渲染这些组件以供参考。
在视觉方面,有时将这些组件包裹在WrapperComponent
中,并带有其他样式,以便在人眼在屏幕上查看时以不同的方式显示它们。
是否有一种方法可以使WrapperComponent
知道其渲染器(可以这么说),以便可以有条件地忽略发送到VRT的标记中的WrapperComponent
?
基本上,我会做类似的事情:
ReactDOM.renderToStaticMarkup(componentPossiblyWithWrapperComponentInside)
在WrapperComponent
中:
class WrapperComponent extends React.Component {
render() {
return isBeingRenderedForVRT ?
this.props.children :
(
<div className='wrapper-component-for-human-screens'>
{this.props.children}
</div>
)
}
}