javascript - 如何在react中的单个id元素中渲染两个组件

标签 javascript html reactjs

如何在单个 id 中渲染多个组件,我知道单个 id 无法渲染多个组件,我也尝试过 getElementByClass 但结果是相同的

    function Ads(product) {
        return(
          <div className={product.className} id="user-ads">
         <div className = "col-sm-6 col-md-5">
          <div className = "thumbnail">
          <img src={product.image} alt="product-image"/>
          </div>
          <div className = "caption">
          <div className="border">
             <h3>{product.title}</h3>
             <p>{product.desc}</p>  
                <button className = "btn btn-primary" role = "button" data-toggle="modal" data-target="#view-detail">View Details
                </button>  
                  </div>
                    </div>
                      </div>
                        </div>

          );
    }

    function Newad(product) {
        return (
          <Ads title="Forza" desc="rndom text rndom text rndom text rndom text" image="img/img2.jpg" />
          );

}

ReactDOM.render(<Ads title="PlayStation 4" desc="Lorem ipsum jipsum Lorem ipsum jipsum" image="img/img1.jpg" className="row" />, document.getElementById('all_ads'));
ReactDOM.render(<Newad />, document.getElementById('all_ads'));

最佳答案

你为什么要这么做?这不是 react 的工作原理。应该有一个安装点,所有其他组件都应该位于该安装点下

因此,在您的情况下,当您渲染 Newad 时,它会自动调用在 Newad 内声明的 Ads

如果您想列出多个广告,请从 NewAd 将参数传递给您的添加组件,而不是通过不同的 ID 再次呈现它。

关于javascript - 如何在react中的单个id元素中渲染两个组件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39612204/

相关文章:

html - 使用 flexbox 跨列打破无序列表元素

java - 避免重复提交Struts 2 jsp页面

javascript - react-window fixedSizeGrid 与 react-window-infinite-loader

javascript - 具有精确模式的单词的正则表达式

javascript - 如何根据 "schema"过滤JSON对象

javascript - 从输入字段 Javascript 获取值

javascript - 类型错误 : Cannot read property 'map' of undefined in my app

angular - 为 Angular/ react 组件创建组件库的技巧

javascript - 使用 JavaScript 下载 Google Drive 文件

javascript - 如何使用 javascript (jQuery) 隐藏点击时由 anchor href 引用的 div