react 如何实现setInterval每过一秒在html中添加一个div ?
现在有一个需求是要每过几秒在界面添加一个盒子 之前没写过react
函数应该写在componentDidMount()里面吧
求大佬给个思路~
现在实现了 不知道怎么停下来 我是真滴菜
react 如何实现setInterval每过一秒在html中添加一个div ?
现在有一个需求是要每过几秒在界面添加一个盒子 之前没写过react
函数应该写在componentDidMount()里面吧
求大佬给个思路~
现在实现了 不知道怎么停下来 我是真滴菜
import React from "react";
class Clock extends React.Component {
constructor(props) {
super(props);
this.state = {arr:["div"]};
}
componentDidMount() {
this.timeID = setInterval(
()=> this.tick(),
1000
)
}
componentWillUnmount(){
clearInterval(this.timeID)
}
tick() {
// 5 个 停止计时器
if(this.state.arr.length ===5) {
clearInterval(this.timeID);
return;
}
this.setState((prevState,props) => ({
arr:[...prevState.arr,props.add]
}))
}
render(){
return (
this.state.arr.map((item,idx)=> (
<div>
<h1>{item}</h1>
</div>
))
)
}
}
ReactDOM.render(
<Clock add={"div"}/>,
document.getElementById('root')
);
10 回答11.1k 阅读
6 回答3k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3.1k 阅读✓ 已解决
2 回答2.6k 阅读✓ 已解决
3 回答5.1k 阅读✓ 已解决
3 回答1.8k 阅读✓ 已解决