我正在使用React 16.2。我有一个组件来渲染一个弹出窗口,其工作原理如下:
<WindowPopOut
trigger={<Button>Open Window PopUp</Button>}
....
/>
然后。。。
class WindowPopOut extends Component {
...
render() {
const clonedTrigger = React.cloneElement(trigger, {
onClick: this.handleTriggerClick,
});
return (
<div>
{clonedTrigger}
...
</div>
);
}
}
问题是这在 DOM 中呈现如下:
<div><Button>Open Window PopUp</Button></div>
如何在没有 DIV 包装的情况下进行WindowPopOut
渲染?因此,该组件仅呈现:
<Button>Open Window PopUp</Button>
你试过用React.Fragment
包装吗?
return (
<React.Fragment>
{clonedTrigger}
...
</React.Fragment>
);
反应文档