Я изучал React и в примере использовался API Promise javascript. функция .then () должна принимать только один аргумент в качестве функции обратного вызова, которая получает значение resol, но как .then () принимает 2 аргумента в качестве функций. Может кто-нибудь сказать, пожалуйста, как это работает?
Я не мог понять, как это работает, потому что всегда была ошибка при попытке этого кода. Однако он работает в браузере.
//defining function getFakeMembers
const getFakeMembers = count => new Promise((resolves, rejects) => {
const api = `https://api.randomuser.me/?nat=US&results=${count}`
const request = new XMLHttpRequest()
request.open('GET', api)
request.onload = () =>
(request.status === 200) ?
resolves(JSON.parse(request.response).results) :
reject(Error(request.statusText))
request.onerror = (err) => rejects(err)
request.send()
})
//calling function getFakeMembers
getFakeMembers(20).then(
members => log(`successfully loaded ${members.length} members`),
error => log("encountered an error loading members")
)