gpt4 book ai didi

javascript - React.js 如何每秒更改球的类别?

转载 作者:行者123 更新时间:2023-11-28 18:27:34 24 4
gpt4 key购买 nike

  1. 我是学习react.js的初学者。我想每秒改变球的类别?一秒是“开”,另一秒是“关”。
  2. 我尝试使用setInterval,但出现错误错误:不变违规:EzLampComp.render():必须返回有效的ReactComponent。
  3. 我的代码在这里。怎么解决??

ez 灯样式:

.ez-lamp{
display : inline-block;
margin : 5px;
width : 30px;
height : 30px;
border-radius : 50%;
}
.ez-lamp.on{
opacity : 1;
background : -webkit-radial-gradient(30% 30%,white 5%,red 95%);
}
.ez-lamp.off{
opacity : 0.5;
background : -webkit-radial-gradient(30% 30%,#888 5%,red 95%);
}

Ezlamp 组件:

var EzLampComp = React.createClass({
render : function(){
var onoff = this.props.onoff;
setInterval(function(){
if(onoff="on")
return <span className = "ez-lamp off"></span>;
else
return <span className = "ez-lamp off"></span>;

},1000);
}
});
ReactDOM.render(
<EzLampComp onoff="on"/> , //JSX
document.querySelector("#content"));

最佳答案

setInterval 应该从 componentDidMount 调用,并且应该只切换状态。

getInitialState() {
return {
onoff: this.props.onoff
}
}

componentDidMount() {
setInterval(function() {
this.setState({
onoff: !this.state.onoff
}, 1000);
}
}

关于javascript - React.js 如何每秒更改球的类别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38811192/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com