react中使用fetch获取数据渲染有问题

在showConfirm()函数中删除目录成功后,通过then调用一次getCatalog()函数,第一次删除目录返回true后,页面渲染没有变化。第二次删除成功后,页面上第一次删除的会消失。就是说会返回前一次的状态。有时候又可以删除即消失。

https://img2.mukewang.com/5c29d05d0001816003980333.jpghttps://img4.mukewang.com/5c29d06600013baf03630061.jpghttps://img4.mukewang.com/5c29d06f000186a407460376.jpg

慕仙森
浏览 548回答 1
1回答

噜噜哒

在 showConfirm() 函数中删除目录成功后(?),通过 then 调用一次 getCatalog() 函数。.then(() => that.props.cbgetCatalog())       ^       |       |      函数或者.then(that.props.cbgetCatalog)                             ^                             |                             |                           后面无括号这才达到你的效果。.then 要传递一个函数,而不是调用函数之后的返回值。按照你的写法,当发送请求的时候,就已经调用了 that.props.cbgetCatalog 函数,此时的分类还没有删除。这是 Promise 的一个坑,切记 .then 里面一定要传递函数。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript