用于避免重复渲染(执行render函数),提高效率
以下面的示例:
// taskContainer 组件
class TaskContainer extends Component {
state = {
taskList: []
};
componentDidMount() {
const task = [];
for (let i = 0; i < 10; i++) {
task.push({
isFinish: Math.random() > 0.5,
name: `任务${i}`
});
}
this.setState({
taskList: task
});
}
handleAdd = val =>{
this.setState({
taskList: [...this.state.taskList, val]
});
}
render() {
console.log("container render");
return (
<div>
<TaskList task={this.state.taskList} />
<AddTask
add={this.handleAdd}
/>
</div>
);
}
}
// TaksList
class TaskList extends Compon