首页 > 解决方案 > if 语句未在异步函数内运行

问题描述

 const readersInfo = useSelector(
  (state:IRootState) => state.reader.readerinfo
);


useEffect(() => {
  dispatch(getThisReaderInfoThunk())
}, [dispatch]);


const readerInfo = readersInfo[0]


const onSubmit = async () => {

  console.log("aaabbbccc")
  const recording_data=  await onStartRecord()
console.log(recording_data) //is ok 
   if (readerInfo){

 //this part can't run
    console.log("this is path",recording_data,readerInfo.id,bookId, page)
     dispatch(postAudioRecordThunk(recording_data as string,readerInfo.id,bookId, page))
   }
}

当我调用 onSubmit 函数时,确实记录了 aaabbbccc,但是 if 语句没有运行,有人可以帮忙吗?谢谢!readerInfo 是 useSelector 从 redux 加载的常量,在这种情况下是 true

标签: javascriptreact-nativeif-statementasynchronousredux

解决方案


推荐阅读