Reactjs 在浏览器端使用React使用异步调用获取数据有什么好处?
当然,在浏览器中优化使用线程的想法是好的,但根据我的经验,当我们使用React时,我们有两个选择:Reactjs 在浏览器端使用React使用异步调用获取数据有什么好处?,reactjs,asynchronous,fetch-api,Reactjs,Asynchronous,Fetch Api,当然,在浏览器中优化使用线程的想法是好的,但根据我的经验,当我们使用React时,我们有两个选择: 使用像redux/saga这样的中间层 使用异步调用实现useffect,如 因此,我的问题是,在获取数据时浏览器中没有阻塞线程有什么好处?如果在获取数据时阻塞页面(即,发出同步请求并阻塞浏览器线程),用户将看到屏幕冻结。无论哪种方式,您提到的两种方法都使用异步调用来获取数据,因此它们在这方面是相似的。优点是您使用唯一合法的方法来获取数据,这就是异步。同步XHR请求已过时。 useEffect
- 使用像redux/saga这样的中间层
- 使用异步调用实现useffect,如
因此,我的问题是,在获取数据时浏览器中没有阻塞线程有什么好处?如果在获取数据时阻塞页面(即,发出同步请求并阻塞浏览器线程),用户将看到屏幕冻结。无论哪种方式,您提到的两种方法都使用异步调用来获取数据,因此它们在这方面是相似的。优点是您使用唯一合法的方法来获取数据,这就是异步。同步XHR请求已过时。
useEffect(() => {
const fetchJobs = async () => {
if ((jobs.length === 0)) {
let data;
if (isRecruiter) {
data = await getJobOffersCreatedByRecruiter(token, () => dispatch(jobListLoadingError));
}
else {
data = await getJobOffers(token, () => dispatch(jobListLoadingError));
}
if (typeof data !== "undefined" && data.status !== 401) {
const json = await data.json();
dispatch(jobListLoaded(json));
}
else {
dispatch(jobListLoadingError);
dispatch(loginRequired);
}
}
}
fetchJobs();
}, [dispatch, jobOffersLoadingError, jobs, token, isRecruiter])
```
So, my question is, what is the advantage of no blocking thread in the browser when fetching data?