Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在react中动画(获取数据)后不进行组件渲染_Javascript_Reactjs_Fetch_Loading - Fatal编程技术网

Javascript 在react中动画(获取数据)后不进行组件渲染

Javascript 在react中动画(获取数据)后不进行组件渲染,javascript,reactjs,fetch,loading,Javascript,Reactjs,Fetch,Loading,我在做一个星球大战项目。我在捕获数据时添加了一个动画。但一旦拉取数据,组件就不会再次渲染。连续动画仍处于活动状态。我错过了什么?提前谢谢大家,晚上好 注意:此github项目链接: 最后,如果有我的发展,我愿意接受你的建议 类MovieDetails扩展组件{ 状态={ 标题:空, 插曲编号:空, 正在打开爬网:null, 董事:空, 制作人:空, 发布日期:空, 字符:[], 加载:对, }; 异步组件安装{ const titleSearch=this.props.match.params.

我在做一个星球大战项目。我在捕获数据时添加了一个动画。但一旦拉取数据,组件就不会再次渲染。连续动画仍处于活动状态。我错过了什么?提前谢谢大家,晚上好

注意:此github项目链接:

最后,如果有我的发展,我愿意接受你的建议

类MovieDetails扩展组件{ 状态={ 标题:空, 插曲编号:空, 正在打开爬网:null, 董事:空, 制作人:空, 发布日期:空, 字符:[], 加载:对, }; 异步组件安装{ const titleSearch=this.props.match.params.title; 让characterNames=[]; const movieDetail=等待axios.get`https://swapi.co/api/films/?search=${encodeURItitleSearch}`; const charactersFetchLinks=movieDetail.data.results[0].characters.slice0,10; const promisesData=等待字符fetchlinks.map link=>axios.getlink; axios.allpromisesData.thenvalue=>{ value.mapval=>characterNames.pushval.data.name; const{title,eposion_id,opening_crawl,director,producer,release_date}=movieDetail.data.results[0]; this.setState{title,eposion_id,opening_crawl,director,producer,release_date,characters:characterNames,load:false}; }; } 渲染{ const movieId=this.state.eposion\u id; const loading=this.state; 回来 加载? : ; } } 导出默认电影详细信息;
您尚未正确地分解属性

 const movieId = this.state.episode_id;
 const loading = this.state;
应该是:

 const { episode_id, loading } = this.state

加载将始终为真,因为状态始终是定义的。

您只需替换即可

const loading = this.state;
作者:


你的建议奏效了。非常感谢。我通常会执行析构函数,但我错过了它,因为我编码速度很快。@KasimŞEN很高兴我能帮上忙。如果你能把它标为正确答案那就太棒了谢谢你,伙计。我错过的一个小细节
 const loading = this.state.loading;