Procédure d'étude vraiment nécessaire pour ceux qui veulent étudier l'orme

J'ai entendu dire que l'orme est un SPA de type avant de sécurité, mais je ne sais pas par où commencer.

Montrons ce qu'était Hello World avec elm à partir d'un état propre dans le navigateur.

install

Le premier est l'installation. Les personnes qui ont écrit les articles décrits ci-dessous pensaient probablement que les bases telles que l'installation n'auraient pas à être écrites. Certainement officiellement. Cependant, il y a une quantité décente de documentation, et quand il s'agit de "lire tout cela avant de commencer", je ne peux pas me sentir libre d'y toucher. Regardez ici pour trouver ce dont vous avez besoin.

installation d'orme

https://guide.elm-lang.org/install/elm.html L'éditeur dit que le texte sublime est vieux (est-ce que quelqu'un l'utilise encore?), Alors ignorez-le et insérez le binaire elm. Suivez les instructions en fonction du système d'exploitation. Puisque je suis Linux, je l'ai décompressé après l'avoir obtenu avec la commande curl, ignoré README, l'ai placé dans ~ / bin et l'ai mis dans le PATH. Il semble que pkg plante pour mac et exe plante pour win.

Vous pouvez maintenant utiliser la commande elm.

$ elm
Hi, thank you for trying out Elm 0.19.1. I hope you like it!

-------------------------------------------------------------------------------
I highly recommend working through <https://guide.elm-lang.org> to get started.
It teaches many important concepts, including how to use `elm` in the terminal.
-------------------------------------------------------------------------------

The most common commands are:

    elm repl
        Open up an interactive programming session. Type in Elm expressions like
        (2 + 2) or (String.length "test") and see if they equal four!
    
    elm init
        Start an Elm project. It creates a starter elm.json file and provides a
        link explaining what to do from there.
    
    elm reactor
        Compile code with a click. It opens a file viewer in your browser, and
        when you click on an Elm file, it compiles and you see the result.

There are a bunch of other commands as well though. Here is a full list:

    elm repl    --help
    elm init    --help
    elm reactor --help
    elm make    --help
    elm install --help
    elm bump    --help
    elm diff    --help
    elm publish --help

Adding the --help flag gives a bunch of additional details about each one.

Be sure to ask on the Elm slack if you run into trouble! Folks are friendly and
happy to help out. They hang out there because it is fun, so be kind to get the
best results!

first step to run elm

Pour le moment, trouvez un échantillon de Hello World et saisissez-le dans

$ elm 01hello.elm 
There is no 01hello.elm command.

Run `elm` with no arguments to get more hints.

J'ai essayé en tant que tel, mais je me fâche s'il n'y a pas une telle commande. Quand je jetais un coup d'œil à l'aide, ce serait «un hâle». C'est pourquoi je vais l'essayer.

$ elm init

Les répertoires elm.json et src ont été créés. Il semble que index.html soit créé en mettant Main.elm dans src et elm build.

$ tree

├── elm.json
├── elm-stuff
│   └── 0.19.1
│       ├── d.dat
│       ├── i.dat
│       ├── lock
│       ├── Main.elmi
│       ├── Main.elmo
│       └── o.dat
├── index.html
└── src
    └── Main.elm

Ignorez les trucs d'orme pour le moment. Écrivez ce qui suit dans src / Main.elm.

https://github.com/bryanjenningz/25-elm-examples/blob/master/01-hello-world.elm Plus d'extrait

module Main exposing (main) 
import Html exposing (text) 

 main = 
     text "Hello, World!" 

ici

$ elm src/Main.elm

Ensuite, ʻindex.html` est créé. Vous pouvez y aller. exaple02 semble simplement déclarer un type pour cela. À 03,04, vous pouvez ajouter l'attribut class à div Doug.

Ah, je sens que je peux passer par ici dans l'ordre. J'en ai assez de lire l'anglais, donc je le lis au besoin. Veuillez signaler toute omission.

02 Implémentation du compteur d'accès

Je sens que le niveau de difficulté a soudainement augmenté à partir du compteur 05. Le bac à sable est-il comme un état ReAct? Icrement est juste un identifiant de msg, et le modèle de msg de mise à jour détermine si le msg reçu est Incrément et incrémente le modèle. L'enfant dont l'affichage à l'écran est mis à jour avec ceci est un modèle de vue réactive. Pratique.

J'aimerais ajouter un peu plus, mais c'est tout pour aujourd'hui. Je vais examiner s'il faut l'ajouter à cet article ou en faire un article séparé.

J'espère que cela vous libère de l'enfer du gestionnaire de paquets frontal et des informations de tout type de langage AltJS. (Puisqu'il est mis à jour de manière irrégulière, il n'y a aucune perspective de quand et combien il sera fait)

Motivation pour écrire cet article

J'ai lu l'article suivant pour commencer avec elm, mais je ne savais pas par où commencer.

Article Qiita

--Wai's Elm debut [Part 1] [Part 1] ――Le texte est intéressant et il y a une implémentation, mais du coup j'écris le code elm ――Je ne sais pas comment le convertir en html et l'afficher sur le navigateur.

prime

La taille de la commande elm est proche de 30 Mo. Linux Elm 0.19.1. Même si vous regardez ldd, il n'y a pas de lien ld, et vous le faites tout seul sans compter sur libstd, je vois ...

Les références

Recommended Posts

Procédure d'étude vraiment nécessaire pour ceux qui veulent étudier l'orme
Je veux analyser les sentiments des gens qui veulent se rencontrer et trembler
Aux personnes qui «recrutent mais ne recrutent pas»