Elm: Comment puis-je afficher une liste de chaînes dans une liste HTML?
Je suis en train d'écrire un l'orme programme qui doit son format de sortie dans une liste HTML. La fonction que je veux prend,
inputs = ["first", "second", "third"]
et les sorties d'une sorte de Elm Element
qui est, essentiellement,
<ul>
<li>first</li>
<li>second</li>
<li>third</li>
</ul>
Malheureusement, je ne peux pas trouver toutes les fonctions intégrées pour ce faire. Peut-être le markdown
syntaxe pourrait être étendue pour prendre en Moustache-comme modèles,
[markdown|
{{#inputs}}
* {{text}}
{{/inputs}}
]
(désolé, je ne suis pas sûr de ce que le bon Moustache syntaxe est un tableau de chaînes de caractères, au lieu de tableau d'objets).
HTML brut élément émettant serait bien aussi. Merci à l'avance!
- Le mot que vous cherchez est "markdown interpolation" et c'est quelque chose qui a été discuté un moment en arrière, lorsque je me suis plaint à propos de quelque chose de très similaire à cela. Peut-être que cela peut vous aider: groups.google.com/forum/#!searchin/elm-discuter/...
Vous devez vous connecter pour publier un commentaire.
Voulez-vous rendre dans un élément (c'est à dire de la toile) ou vraiment comme html. Si ce dernier, alors vous pouvez utiliser
elm/html
etou dans la tuyauterie de style
ou en point-style libre
Element
, ce qui n'est pas ce qu'il a réellement voulu (un simple élément HTML). Si la vôtre a été la première réponse qui a abordé ce qu'il a vraimentList.map
, juste pour être pédant ou utile à l'avenir les noobs comme moiLorsque vous commencez à écrire une fonction, il est utile de définir vos signature. La signature est écrit sur la ligne avant de la définition de la fonction. La signature que vous voulez, c'est:
La sortie de cette fonction est de type
Html msg
, qui est fourni par le elm-html paquet. Vous l'ajouter à votre projet en exécutant la commande$ elm-package install elm-lang/html
de votre racine du projet.Une fois que c'est installé, ajoutez une déclaration à l'importation
Html
dans votre elm fichier, et de mettre en œuvre la fonction. Voici un travail de mise en œuvre:StringList.elm
Intéressant, je ne pense pas que l'Orme est doté d'un
Element
pour les listes. Je ne suis pas sûr de savoir si c'est volontaire, parce que vous pouvez rouler votre propre*, ou si c'est juste que personne n'a jamais eu besoin d'un non-statique de la liste de choses à faire avant. (HTML listes sont utilisées sur le elm-lang.org site web, mais ceux sont des listes statiques qui, je pense, sont définis en MarkDown)Markdown interpolation avec la moustache de syntaxe a été mise en œuvre mais je ne suis pas sûr de son état. Et de toute façon il n'était pas aussi puissant que la chose que vous décrivez.
Émettant HTML brut ne fait pas partie de la philosophie de l'Orme du
Graphics
API. L'idée est que le cours HTML/CSS/JavaScript pour l'écriture de sites web et web applications est un gâchis, même avec toutes les bibliothèques, etc. construit au-dessus d'elle. Donc Ormes façon est de mettre une couche d'abstraction au-dessus de sorte que vous pouvez parler d'rectangulaireElement
s qui, naturellement, pile à l'horizontale et à la verticale (avecflow
*), et de forme libreForm
s, qui peut être mis dans uncollage
(qui est encore une forme rectangulaireElement
).*(voir Daniëls réponse pour une avec des balles, il est juste de bare-bones):
Vous pouvez écrire une liste à puce dans l'Orme à l'aide d'un collage:
Live exemple: http://share-elm.com/sprout/538e460fe4b07afa6f981ab6