为了便于解释'then'的含义,有谁能告诉我这段代码中发生了什么吗?在ReactJS中使用'then'
fetchComments().then(response => {
this.setState({
comments: response.comments
});
});
为了便于解释'then'的含义,有谁能告诉我这段代码中发生了什么吗?在ReactJS中使用'then'
fetchComments().then(response => {
this.setState({
comments: response.comments
});
});
fetchComments
返回承诺(可能是,它可能只是一个 “thenable” *)。承诺是在稍后的时间点(通常为**)解决或拒绝的。 then
用于连接将在解析承诺时调用的处理函数(并且可以选择何时拒绝,如果将第二个函数传递到then
;否则将使用catch
)。
在这种情况下,该代码说,当/如果承诺通过fetchComments
做出决议回,使用分辨率值的comments
财产使用的分辨率值的阵营组成的set the state。
更多关于承诺this MDN article和the Promises/A+ spec。
*请参阅承诺/ A +规范什么是“可容纳”。
**如果你在一个承诺,就是已经解决或拒绝使用then
,你在JavaScript中的原生的承诺,你的处理器将仍然被异步调用保证。对于一些早期的类似promise的实现来说,情况并非总是如此,它们会异步地调用您的回调(如果承诺尚未解决)或同步(如果是),这是......混乱且无益的。 JavaScript的本地承诺和任何真正的好承诺库保证一致的回调行为。
功能fetchComments“会获取数据,并返回一个承诺然后给他们陈述意见:)。但我认为你应该阅读他的^^。
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise/然后 –
我在这里问,因为我从那里不明白。 –
文档的哪一部分不清楚?无论如何,要求查找教程的问题都是SO的主题。 –