Reactjs 当用户通过触摸触发时,如何连续显示不同的图像
我想做一个书的开合动画Reactjs 当用户通过触摸触发时,如何连续显示不同的图像,reactjs,react-native,Reactjs,React Native,我想做一个书的开合动画 我需要执行的动画是从一个图像到另一个图像的过渡 我有3张不同的照片 我对插值部分感到困惑,静止图像的输入范围和输出范围应该给出什么值 我正在努力做到这些: 第一个图像显示为默认值 当用户单击该图像时,它应在 小延迟,它应该再次向用户显示更多图像 这就是我所做的: 导出默认类animateBook扩展组件{ 状态={ 触发:错误, 已关闭帐簿:错误 } 改变图像(){ if(this.state.Triggered==false){ 返回( ); } if(this.
- 我需要执行的动画是从一个图像到另一个图像的过渡
- 我有3张不同的照片
导出默认类animateBook扩展组件{
状态={
触发:错误,
已关闭帐簿:错误
}
改变图像(){
if(this.state.Triggered==false){
返回(
);
}
if(this.state.Triggered==true&&this.state.BookClosed==false){
返回(
);
}
setTimeout(()=>this.stateFunc,1000);
}
stateFunc(){
this.setState({BookClosed:true},()=>setTimeout(()=>this.openBook,1000);
}
openBook(){
if(this.state.Triggered==true&&this.state.BookClosed==true){
返回(
);
}
}
render(){
返回(
{this.setState({Triggered:true});}>
{this.changingImages()}
);
}
}
好的,参考您的代码,该代码将永远不会被调用
因为我们要提前归还
Set timeout返回给定时间后将执行的计时器Id。您可以使用clearTimeout“取消”执行
尝试这样做:
状态={
触发:错误,
BookClosed:错误,
}
closeTimeoutHandler=null;
改变图像(){
if(this.state.Triggered==false){
返回(
);
}
if(this.state.Triggered==true&&this.state.BookClosed==false){
clearTimeout(这个.closeTimeoutHandler);
this.closeTimeoutHandler=setTimeout(()=>this.stateFunc(),1000);
返回(
);
}
if(this.state.Triggered==true&&this.state.BookClosed==true){
返回(
);
}
}
stateFunc(){
this.setState({BookClosed:true});
}
render(){
返回(
{this.setState({Triggered:true});}>
{this.changingImages()}
);
}
}
也许这可以通过react native的定时器实现,我认为你真的不需要设置动画,因为这不会在任何地方移动,只会在某个时间后更改图像,也许你应该使用定时器来检查,而不是继续设置动画嗯,是的,对于静止图像,我实际上不需要这样做。这是我知道的,它不需要ally需要任何动画,因此我如何使用计时器或如何执行此操作@Adarshsreeram这是我现在所做的,但我没有得到第三张图像,我认为你必须更新你的问题,因为现在你的要求不同,问题也不同哦,好吧,让我先尝试一下这一点嘿,正是这样做的一开始我想要它,我想如果我需要动画,但那不会锻炼,因为我只想在按下时更改图像,设置超时就足够了,非常感谢:)