React数据渲染是指将组件中的数据映射到页面上,以展示出来。在React中,数据渲染通常是通过JSX和组件的state或props完成的。
JSX是一个类似HTML的语法,可以在其中嵌入JavaScript表达式。在JSX中,可以使用{}包裹JavaScript表达式,以渲染props或state中的数据。例如:
jsx
function UserInfo(props) {
return (
<div>
<h1>{props.name}</h1>
<p>{props.age} years old</p>
</div>
);
}
const user = {
name: "Tom",
age: 25
};
ReactDOM.render(
<UserInfo name={user.name} age={user.age} />,
document.getElementById("root")
);
上述例子中,通过使用JSX语法,将UserInfo组件中的props数据渲染到页面上。
另外,组件的state也可以用于数据渲染。当组件的state发生改变时,React会自动更新组件的UI,以反映出最新的状态。例如:
jsx
class Counter extends React.Component {
constructor(props) {
super(props);
this.state = { count: 0 };
}
handleClick() {
this.setState({ count: this.state.count + 1 });
}
render() {
return (
<div>
<p>Count: {this.state.count}</p>
<button onClick={() => this.handleClick()}>Click me</button>
</div>
);
}
}
ReactDOM.render(
<Counter />,
document.getElementById("root")
);
上述例子中,Counter组件的state中包含一个count属性,该属性用于记录当前计数器的值。当点击按钮时,调用handleClick方法,通过调用this.setState更新组件的state,从而触发UI的更新,实现计数器的变化。