首页 > 解决方案 > 我们可以在两个不同的 div 中渲染两个不同的内容吗?

问题描述

import React from "react";
import ReactDOM from "react-dom";

ReactDOM.render(
  <span>Is React a JavaScript library for building user-interfaces?</span>,
  document.getElementById("question1")
)
ReactDOM.render(
  <form class="options">
    <input type="radio" value="Yes" />
    <input type="radio" value="No" />
  </form>,
  document.getElementsByClassName("options-main-container")
);

这段代码有什么问题???我尝试了不同的方法但无法解决这个问题请任何人帮我解决这个问题

标签: javascriptreactjs

解决方案


ReactDOM.render是的,在同一页面上多次调用是完全可以的。

问题来了,

document.getElementsByClassName("options-main-container")

这将返回array具有类 name 的元素options-main-container。因此,您不能使用此代码直接渲染元素。您要么需要遍历数组,要么只获取1st匹配的元素,例如,

document.getElementsByClassName("options-main-container")[0] //This will get the 1st matching element

推荐阅读