Surmonter les défis liés à l'application de styles CSS aux applications Elm
P粉627427202
P粉627427202 2024-03-29 20:09:28
0
1
427

J'ai du mal à trouver la meilleure façon de styliser mon application Elm 19. Voici ce que j'ai essayé en vain :

module Main exposing (..)

import Browser
import Html exposing (..)
import Html.Attributes exposing (..)
import Html.Styled.Attributes exposing (css)
import List exposing (..)
import Css exposing (..)

type alias Model = List Status
type alias Status = { status : String }


main =
    Browser.element
        { init = init
        , view = view
        , update = update
        , subscriptions = subscriptions
        }


-- Note: I removed the init, update, and subscriptions functions from this code snippet as it does not seem like they were relevant to my question.


view : Model -> Html Msg
view model =
    main_ 
        [ css
        [ color (hex "ffffff")
        , backgroundColor (hex "000000")
        , Css.height (vh 100) ]
        ]
        [ h1
            [ css [ margin (px 0) ] ]
            [ text "The title of my app" ]
        , input [ value ""] []
        ]

Le compilateur a souligné que le problème que j'ai rencontré dans main_ était le suivant :

<!-- language: lang-none -->
This argument is a list of type:

    List #(Html.Styled.Attribute msg)#

But `main_` needs the 1st argument to be:

    List #(Attribute msg)#

Voici le elm.json fichier :

{
    "type": "application",
    "source-directories": [
        "src"
    ],
    "elm-version": "0.19.1",
    "dependencies": {
        "direct": {
            "elm/browser": "1.0.2",
            "elm/core": "1.0.5",
            "elm/html": "1.0.0",
            "elm/time": "1.0.0",
            "ianmackenzie/elm-units": "2.9.0",
            "justinmimbs/date": "4.0.1",
            "rtfeldman/elm-css": "18.0.0"
        },
        "indirect": {
            "elm/json": "1.1.3",
            "elm/parser": "1.1.0",
            "elm/url": "1.0.0",
            "elm/virtual-dom": "1.0.3",
            "robinheghan/murmur3": "1.0.0",
            "rtfeldman/elm-hex": "1.0.0"
        }
    },
    "test-dependencies": {
        "direct": {},
        "indirect": {}
    }
}

Je soupçonne que j'utilise peut-être une ancienne version de elm-css ou quelque chose de similaire, mais j'ai du mal à comprendre ce qui ne fonctionne pas pour moi ici.

P粉627427202
P粉627427202

répondre à tous(1)
P粉135799949

Pour une utilisation elm-css,您需要使用 Html.Styled.toUnstyledHtml.Styled.Html 转换为 Html.Html。这意味着您需要 import Html.Styled 暴露 (..) 而不是 import Html 暴露 (..)

Cela signifie main_ 将是 Html.Syled.main_ 而不是 Html.main_ (comme c'est le cas maintenant).

Alors vous pourrez view 代码的末尾添加 |> Html.Styled.toUnstyled et tout fonctionnera bien.

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!