setTimeout立即执行的问题

我在用react-native开发安卓app的时候碰到setTimeout立即执行的问题,网上找了很多资料尝试也都没有效果,所以前来求助大神。。

下面是我的代码

    _heightAnimate = () => {
        let that = this;
        setTimeout(function () {
            that.exChangeToImageDetails()
        }, 10000);
    }

    exChangeToImageDetails = () => {
        this.props.exChangeSwiper(1, true)
    }
    
    //调用_heightAnimate()方法的时候,exChangeToImageDetails方法会立即执行

是不是我的写法有问题?有好的解决方法吗?

阅读 2.9k
2 个回答

就代码而言是没有问题的,你可以在定时器及exChangeToImageDetails函数里打印,看下他是什么时候运行的,是不是定时器运行导致的函数运行。还是说你别的地方也调用了函数

我试着把this.props.exChangeSwiper(1, true)改成console.log('123')
这是没有问题的,你代码应该也没问题,问题可能出现在this.props.exChangeSwiper(1, true)这个方法上。
或者你其他哪个地方代码有影响这边。。。你再仔细看看

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题