Elm:
Werken met JSON

Hoe te:

Elm handelt JSON af met behulp van de Json.Decode en Json.Encode modules. Hier is een eenvoudig voorbeeld:

import Html exposing (text)
import Json.Decode exposing (string)

-- Het decoderen van een eenvoudige JSON-string
jsonString : String
jsonString = "{\"name\": \"Elm\"}"

type alias Gebruiker =
    { naam : String }

gebruikersNaamDecoder : Json.Decode.Decoder String
gebruikersNaamDecoder =
    Json.Decode.field "name" string

main =
    case Json.Decode.decodeString gebruikersNaamDecoder jsonString of
        Ok naam ->
            text ("Welkom, " ++ naam)

        Err _ ->
            text "Oeps, er is iets misgegaan!"

Output:

Welkom, Elm

Diepere Duik

Sinds de vroege jaren 2000 is JSON de facto de standaard geworden voor web-API’s en heeft het XML verdrongen vanwege de eenvoud. Hoewel Elm beknopt en type-veilig is, kan het omgaan met JSON omslachtig zijn door de noodzaak van expliciete decoders.

Alternatieven zoals Haskell gebruiken typeklassen voor het coderen/decoderen van JSON, wat meer out-of-the-box functionaliteit biedt. Echter, Elm’s aanpak helpt typeveiligheid te handhaven en runtime-fouten te voorkomen. Decoders geven expliciet aan hoe JSON naar Elm-typen moet worden geconverteerd, en encoders doen het omgekeerde proces.

Zie Ook

Voor verdere lectuur en bronnen: