reactjs / ru.react.dev

React documentation website in Russian / Официальная русская версия сайта React
https://ru.react.dev
Creative Commons Attribution 4.0 International
678 stars 380 forks source link

better translate #563

Closed aliaksandrsen closed 3 years ago

aliaksandrsen commented 3 years ago

Если ваш пулреквест является исправлением бага, а не переводом, то сперва убедитесь, что проблема относится ТОЛЬКО к https://ru.reactjs.org, а не к https://reactjs.org. Если это не так, то пулреквест следует открыть в родительском репозитории.

netlify[bot] commented 3 years ago

Deploy preview for ru-reactjs ready!

Built with commit 7f9579a0726e2c873e6edf448f9764dfa7d9af34

https://deploy-preview-563--ru-reactjs.netlify.app

gcor commented 3 years ago

Спасибо

aliaksandrsen commented 3 years ago

Спасибо @gcor Пожалуйста. Подскажи косательно сущности этого коммента React команда считает, что ошибки именно серверные должны обрабатываться во втором аргументе then. Но таким образом если ошибка возниенет (ошибка в нашей логике) в первом аргументе then она отловлена не будет. Таким образом они считают что ошибки логики должны отлавливаться в других местах? например ?

gcor commented 3 years ago

@Aliaksandrsen, я думаю вам лучше задать этот вопрос в репозитории основной документации

ntishkevich commented 3 years ago

Спасибо @gcor Пожалуйста. Подскажи косательно сущности этого коммента React команда считает, что ошибки именно серверные должны обрабатываться во втором аргументе then. Но таким образом если ошибка возниенет (ошибка в нашей логике) в первом аргументе then она отловлена не будет. Таким образом они считают что ошибки логики должны отлавливаться в других местах? например ?

Если у вас конкретно вопрос про работу Promise API и метода then, то как раз второй агрумент в then как раз обрабатывает ситуации, когда в первом аргументе then возникнет ошибка. Т.е это не к команде Реакта даже, а к спецификации Promise API, ведь она так работает.

gcor commented 3 years ago
Promise.resolve()
  .then(() => { throw new Error() }, () => console.log('не сработает'))
  .then(console.log, () => console.log('сработает'))

Если ошибка в первом аргументе, то второй не обработает ошибку. Про добавление еще одного then со вторым аргументом в документации ничего нет. Может быть это стоило бы явно прописать в доке.

aliaksandrsen commented 3 years ago

Спасибо @gcor Пожалуйста. Подскажи косательно сущности этого коммента React команда считает, что ошибки именно серверные должны обрабатываться во втором аргументе then. Но таким образом если ошибка возниенет (ошибка в нашей логике) в первом аргументе then она отловлена не будет. Таким образом они считают что ошибки логики должны отлавливаться в других местах? например ?

Если у вас конкретно вопрос про работу Promise API и метода then, то как раз второй агрумент в then как раз обрабатывает ситуации, когда в первом аргументе then возникнет ошибка. Т.е это не к команде Реакта даже, а к спецификации Promise API, ведь она так работает.

собственно это понятно непонятно почему они выбирают way (отдают ему предпочтение) с .then(f1, f2) вместо .then(f1).catch(f2)