Вы получаете ошибку из своего кода. Например, в Firefox в консоли разработчика будет указано TypeError: r.json is not a function
. (Я вижу, что вы используете alert()
, поэтому вы, возможно, не знакомы с консолью разработчика и console.log()
, доступными в браузерах. Если это так, я бы посоветовал обратиться к ним, поскольку информация, которую они предоставляют, может быть неоценимой. )
Проблема в том, что в r.json()
, r
является либо объектом ответа, либо объектом исключения из-за более раннего, первого .catch(err=>err)
. Поскольку объекты исключений не имеют свойства json
, он генерирует собственное исключение. Это исключение не обнаружено, поскольку для него нет try/catch
, а .catch()
можно использовать только для обещаний.
Вы можете сделать что-то вроде этого, чтобы проверить и передать начальное исключение:
responses.map(r => r.json ? r.json().catch(err=>err) : r)