return问题

问题描述

发现一个很奇怪的问题,关于轮询请求无法被调用

问题出现的环境背景及自己尝试过哪些方法

我在轮询调用一个方法时,发现代码无法跑到方法体內(upInitialize为轮询调用的方法),我在方法内第一行console都无法输出,当我去掉respondsJudge时候方法的调用(if(res))后一切又正常了

相关代码

// 请把代码文本粘贴到下方(请勿用图片代替代码)
//调用轮询方法

   componentDidMount() {
        this.initialize();
        loopReq('abcd',this.upInitialize);
    }
    //被调用的方法
     upInitialize =() =>{
        energyStorageInformation_img()
            .then(res => {
                if (respondsJudge(res)) {
                    this.setState({ energyStorageInformation_img: res.data.storageInfo })
                }
            });       
            }
     //respondsJudge方法
     export function respondsJudge(res){
  return res
}
//轮询方法
export function loopReq(timerName,reqFn){
    window.myTimer = window.myTimer? window.myTimer:{};
    window.myTimer[timerName]=window.setInterval(()=>{
        reqFn();
    },Config.dataTimer);

你期待的结果是什么?实际看到的错误信息又是什么?

希望能知道原因

阅读 1.2k
1 个回答

给出的代码没有任何地方调用loopReq方法。

修改为:

 window.myTimer[timerName]=window.setInterval(reqFn, Config.dataTimer);
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题