繁体   English   中英

如何调用ReactDOM.render中存在的特定组件

[英]How to call react particular component present in ReactDOM.render

我有2个组件要呈现在myProject-init.js的单个div中,一次呈现1个。 但是两者都被称为并行。

myProject-init.js文件:

ReactDOM.render(
<div>
    <component1>in component1</component1>
    <component2>in component2</component2>
</div>

我想独立于其他项目调用component1,我可以这样做吗? 如果是,那怎么办?

我了解的是您有2个组件,而您想一次渲染1个组件。 因此最好使用条件渲染,并使用ReactDOM.render()只渲染一个组件

例如

    import React from 'react'
    import ReactDOM from 'react-dom';
    import Component1 from 'somewhere'
    import Component2 from 'somewhere'

    let renderedComponent;

    if (certain condition to meet) {
      renderedComponent = <Component1/>
    } else { 
       renderedComponent = <Component2/>
    }
    ReactDOM.render(renderedComponent, document.getElementById('root'));

其他方式

   // check condition here and assign its value 
   // eg: let renderComponent1 = ( condition to check )
    let renderComponent1 = true 
    let renderComponent2 = false 

 ReactDOM.render(
    <div> 
     {renderedComponent1 && <Component1 />}
     {renderedComponent2 && <Component2 />}
   </div>
, document.getElementById('root'));

这只会渲染<Component1 /> ,如果只想渲染<Component2/>则将renderComponent2设置为true,将renderComponent1为false。

renderComponent1renderComponent2变量都设置为true将同时渲染两个组件,而将false设置为将不渲染任何组件

我希望这是您所需要的。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM