У меня есть внутренний сервер, который может отправлять сообщения об ошибках, например:
{
"error": {
"code" : "UpdatedTermsNotAccepted",
"status": 401,
"message": "ERROR_TERMS_CONDITIONS_NOT_ACCEPTED",
"modal" : {
"title" : "TERMS_UPDATED_TITLE",
"positive": {
"action": "/link/to/accept",
"text" : "ACCEPT_NEW_TERMS"
},
"negative": {
"action": "/logout",
"text:" : "REJECT_NEW_TERMS"
}
}
}
}
Примечание. Тексты должны быть ключами объектов локализации.
Интерфейс всегда проверить, есть ли объект ошибки с модальным свойством. Если он существует, просто создайте модальный объект, используя свойства.
Другой сценарий - отправить объект ошибки с «кодом», «состоянием» и «сообщением», через который будет анализировать интерфейс. код перед этим определит, какое действие предпринять. Метод, использующий модальное в объекте, пропускает дополнительный метод синтаксического анализа и logi c во внешнем интерфейсе.
Я не видел ни одной онлайн-реализации этой реализации, поэтому я сомневаюсь, есть или нет причина, это плохой дизайн.