在我的react應用中,我有以下帶有useState的useEffect掛鉤:
const [jobTypes, setJobTypes] = useState([] ) 。
const getJobTypes = async ( ) => {
try {
const response = await fetch('/job-types') 。
const jsonData = await response.json()。
setJobTypes(jsonData)。
const jobTypeName = jobTypes.find(jobType => jobType。 ret ===jobDetails.jobType)
console.log("jobTypeName: "/span>, jobTypeName)
} catch (err) {
console.error(err.message)。
}
}
useEffect(() => {
getJobTypes()。
}, []);
我面臨的問題是,在執行查找陳述句之前,我需要等待setJobTypes(jsonData)完成,即:
const jobTypeName = jobTypes. find(span class="hljs-params">jobType => jobType.ret == jobDetails.jobType)
因為我得到的是一個未定義的jobTypeName
誰能幫助我找到實作上述目標的最佳方法,因為我只想在jobTypes可用時執行我的array.find
uj5u.com熱心網友回復:
我認為最好的方法是使用jsonData而不是jobTypes
const jobTypeName = jsonData. find(span class="hljs-params">jobType => jobType.ret == jobDetails.jobType)
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/318029.html
標籤:
