Reactjs 无法多次渲染React组件
为什么我不能在Reactjs 无法多次渲染React组件,reactjs,Reactjs,为什么我不能在#root上渲染这两个组件 ReactDOM.render(,window.root); ReactDOM.render(,window.root); 这只会将第二个按钮添加到#root 从“React”导入React; 从“react dom”导入react dom; 常量按钮=({text,styleClass,onClick})=>{ 返回( onClick(e)} onToggle={e=>onToggle(e)} className={'btn${styleClass}
#root
上渲染这两个组件
ReactDOM.render(,window.root);
ReactDOM.render(,window.root);
这只会将第二个按钮添加到#root
从“React”导入React;
从“react dom”导入react dom;
常量按钮=({text,styleClass,onClick})=>{
返回(
onClick(e)}
onToggle={e=>onToggle(e)}
className={'btn${styleClass}}
>
{text}
);
};
ReactDOM.render(,window.root);
ReactDOM.render(,window.root);
因为它基本上显示了您要求它渲染的最后一个组件
请查看文档:
ReactDOM.render(元素,容器[,回调])
呈现React元素
到提供的容器中的DOM中,并返回对
组件(或无状态组件返回null)
如果React元素先前已呈现到容器中,则这将执行
对其进行更新,并仅在必要时对DOM进行修改以反映
最新的反应元素
因为它基本上显示了您要求它渲染的最后一个组件 请查看文档:
ReactDOM.render(元素,容器[,回调])
呈现React元素
到提供的容器中的DOM中,并返回对
组件(或无状态组件返回null)
如果React元素先前已呈现到容器中,则这将执行
对其进行更新,并仅在必要时对DOM进行修改以反映
最新的反应元素
第二个会覆盖第一个呈现的dom
ReactDOM.render(
<>
<Button text="Add"/>
<Button text="Add"/>
<\>,
window.root
);
ReactDOM.render(
,
window.root
);
这将呈现2个按钮,而第二个按钮将覆盖第一个呈现的dom
ReactDOM.render(
<>
<Button text="Add"/>
<Button text="Add"/>
<\>,
window.root
);
ReactDOM.render(
,
window.root
);
这将呈现2个按钮
为什么我不能在#根上渲染这两个组件
因为后一个按钮覆盖了前一个按钮
如果要渲染两个按钮,可以执行以下操作:
从“React”导入React;
从“react dom”导入react dom;
常量按钮=({text,styleClass,onClick})=>{
返回(
onClick(e)}
onToggle={e=>onToggle(e)}
className={'btn${styleClass}}
>
{text}
);
};
ReactDOM.render(
,
window.root//或document.getElementById('root'))
);
一个小的工作示例
const按钮=({text})=>{text}
ReactDOM.render(
,
document.getElementById('root'))
)
为什么我不能在#根上渲染这两个组件
因为后一个按钮覆盖了前一个按钮
如果要渲染两个按钮,可以执行以下操作:
从“React”导入React;
从“react dom”导入react dom;
常量按钮=({text,styleClass,onClick})=>{
返回(
onClick(e)}
onToggle={e=>onToggle(e)}
className={'btn${styleClass}}
>
{text}
);
};
ReactDOM.render(
,
window.root//或document.getElementById('root'))
);
一个小的工作示例
const按钮=({text})=>{text}
ReactDOM.render(
,
document.getElementById('root'))
)
,因为它覆盖了第一个。您应该使用div或片段包装两个按钮,然后作为一个组件渲染,或者将它们添加到不同的div中,因为它会覆盖第一个按钮。您应该使用div或片段包装这两个按钮,然后作为一个组件渲染,或者将它们添加到不同的div中。