1) Предполагая, что вы также выполняете BE или можете попросить кого-то скорректировать ответ - может быть лучше вернуть тело с вашим ответом об ошибке API и избегать только кодов состояния HTTP - если это возможно. Затем он может содержать «код» ошибки, который отображается на сообщение в вашем интерфейсе, а также имя поля, которое может быть действительно полезным для отображения ошибок в нужном месте в формах, например, c. альтернативно, все сообщение может исходить от BE, и FE просто отображает его. Я работаю над кодовой базой корпоративного уровня, в которой используются оба этих метода.
2) Что касается сообщений об ошибках, я бы всегда сохранял их в общем файле, но кроме этого, на ваше усмотрение. Это зависит от того, как вы реализуете # 1. Лично мне нравятся «коды ошибок», хранящиеся в файле enum, которые соответствуют сообщению, потому что затем вы можете делать другие логи c из этого (например, не отображать остальную часть формы, если ошибка X вызвана, используйте пользовательский сообщение для кода ошибки в одной ситуации или возврат к значению по умолчанию
3) Не уверен - я думаю, вы бы сделали это, если хотите регистрировать ошибки на стороне сервера, но показывать клиент. Думаю, там, где я работаю, мы различаем чисто разные категории журналирования.
4) Опять же, зависит от вашей реализации - в некоторой степени от вас. Некоторые пакеты форм будут обрабатывать это для вас в избыточном количестве. Другие будут использовать для этого только локальное состояние, а не избыточное.
5) Имеет смысл, да. Опять же, если вы посмотрите специальный код ошибки, возвращенный в теле вызова API, который даст вам большую гибкость.
Я надеюсь, что это даст вам некоторые идеи, основанные на моем опыте, а не на каком-либо заданном мышлении.
также обратите внимание на https://reactjs.org/docs/error-boundaries.html, и, если вы еще не использовали REST APIS / рекомендации по API REST: https://blog.restcase.com/rest-api-error-codes-101/