--- id: 5a24bbe0dba28a8d3cbd4c5f title: Render HTML Elements to the DOM challengeType: 6 isRequired: false videoUrl: '' localeTitle: 将HTML元素渲染到DOM --- ## Description
到目前为止,您已经了解到JSX是一种在JavaScript中编写可读HTML的便捷工具。使用React,我们可以使用React的渲染API(称为ReactDOM)将此JSX直接渲染到HTML DOM。 ReactDOM提供了一种简单的方法来将React元素呈现给DOM,如下所示: ReactDOM.render(componentToRender, targetNode) ,其中第一个参数是要呈现的React元素或组件,第二个参数是DOM节点您想要将组件渲染到。正如您所料,必须在JSX元素声明之后调用ReactDOM.render() ,就像在使用它们之前必须声明变量一样。
## Instructions
代码编辑器有一个简单的JSX组件。使用ReactDOM.render()方法将此组件呈现给页面。您可以直接将定义的JSX元素作为第一个参数传递,并使用document.getElementById()来选择要将其渲染到的DOM节点。有一个divid='challenge-node'可供您使用。确保不要更改JSX常量。
## Tests
```yml tests: - text: 常量JSX应该返回一个div元素。 testString: 'assert(JSX.type === "div", "The constant JSX should return a div element.");' - text: div应包含一个h1标记作为第一个元素。 testString: 'assert(JSX.props.children[0].type === "h1", "The div should contain an h1 tag as the first element.");' - text: div应该包含一个p标签作为第二个元素。 testString: 'assert(JSX.props.children[1].type === "p", "The div should contain a p tag as the second element.");' - text: 提供的JSX元素应该使用id challenge-node呈现给DOM challenge-node 。 testString: 'assert(document.getElementById("challenge-node").childNodes[0].innerHTML === "

Hello World

Lets render this to the DOM

", "The provided JSX element should render to the DOM node with id challenge-node.");' ```
## Challenge Seed
```jsx const JSX = (

Hello World

Lets render this to the DOM

); // change code below this line ```
## Solution
```js // solution required ```