Я пытаюсь выполнить упражнение в учебнике Elm 0.17 для HTTP. Если выборка gif не удалась, я хотел бы сообщить пользователю, почему она не сгенерирована с сообщением об ошибке.
Я изменил свою модель:
type alias Model =
{ topic : String
, gifUrl : String
, errorMessage : String
}
И получить сбой при обновлении:
FetchFail error ->
(Model model.topic model.gifUrl (errorMessage error), Cmd.none)
Где функция errorMessage
выглядит следующим образом:
errorMessage : Http.Error -> String
errorMessage error =
case error of
Http.Timeout ->
"Timeout"
Http.NetworkError ->
"Network Error"
Http.UnexpectedPayload _ ->
"UnexpectedPayload"
Http.BadResponse _ _ ->
"BadResponse"
Вышеуказанная функция кажется мне ненужной котельной. Есть ли способ, с помощью которого я могу напрямую преобразовать Http.Error
в строку?