HAML: HTML Abstraction Markup Language

Kürzlich habe ich davon erfahren HAML für die Unterstützung meiner Rails-Anwendung und ich habe einige sehr interessante Fakten herausgefunden, die ich mit euch teilen wollte. Die Lernerfahrung war ausgezeichnet und jetzt möchte ich sicherstellen, dass auch das Austauscherlebnis hervorragend ist. Ich hoffe, Sie fangen es leicht! Okay, also los geht's und ein paar sehr grundlegende Dinge über HAML wären: HAML steht für HTML Abstraction Markup Language. Es handelt sich um eine neue Template-Engine für Ruby auf Schienen. Es ist ein Ersatz für die RHTML-Vorlagen, die wir in Rails-Anwendungen so gewohnt sind.

Die Prinzipien von HAML sind, dass das Markup sein sollte Schön, Markup sollte sein TROCKEN (Don’t Repeat Yourself) and markup should be eingerückt. Ich hoffe, das ist keine Raketenwissenschaft.

Schienen “embedded Ruby” by default i.e., .erb Dateien beschreiben die HTML-Ausgabe mit dem notwendigen Ruby-Code, um die dynamischen Teile einer Seite zu generieren. HAML macht dasselbe, verfolgt jedoch einen minimalistischen Ansatz, wenn es um die Syntax geht. Die Leerraumregeln in HAML sind sehr streng. Die Verschachtelung erfolgt durch Einrückung. In HAML beginnen die Tags mit % und müssen nicht geschlossen werden. Sie sind durch Einkerbung selbst geschlossen. id=”abc” will be just #abc and class=”abc” will be .abc div is the default tag and for all others, we have to use %tag <%= Some ruby code%> will be just =some ruby code in HAML. For loops <% some code%> will become -some code in HAML. Syntax : !!! – doctype specifier: e.g. !!! Strict Inserts an HTML DOCTYPE or XML declaration. Default is XHTML 1.0 % – element specifier, e.g. %h1: Wraps everything following in the same line *or* nested in following indented lines with open/close ‘element’ tags. # – id specifier: e.g. #main or %div#main Sets an ‘id’ attribute on an element. If %element is not specified, creates an implied ‘div’ element. . – class specifier: e.g. .error or %li.error Sets a ‘class’ attribute on an element. If %element is not specified, creates an implied ‘div’ element. Classes can be chained with multiple periods. {} – attributes: e.g. %input{:name => “title”, :length => “30”} Sets attributes on an element, taking either Ruby hash key/value pairs or one or more Ruby methods which return a hash. / (at end of tag definition) – self-closing tag: e.g. %br/

Gibt ein selbstschließendes Tag an. (Einige Tags sind standardmäßig selbstschließend.) / (at start of line) – comment: e.g. / Here there be tigers. Creates an HTML comment from the content in the same line or the one nested beneath. – escape characte: e.g. . (to render a period at the start of a line) Allows ‘special’ characters from this list to be rendered as plain text. = – Ruby expression: e.g. %h1= @content.title or = @content.title Works just like the Erb = marker: the Ruby expression following it is evaluated and its result inserted into the document. May follow a tag or stand in a line by itself. – – Ruby non-printing code: e.g. – for content in @contents do Works just like the Erb – marker: the Ruby expression is evaluated but no output goes into the document. Primarily used for flow control and the quirky Rails form_for syntax. == – Ruby interpolated string: e.g. %h1== Now editing #{@content.title} Works just like = followed by a double-quoted string. Content is treated as literal with Ruby variable substitutions. -# – Silent comment, e.g. -# The users are all idiots. Content is never output. In HAML, es ist nicht nötig, den DOCTYPE zu schreiben, wir können ihn mit Hilfe von !!! einbinden. und !!!XML-Tags.

Die Einfachheit besteht darin, dass die RHTML Die HAML-Version hat etwa 261 Token im Vergleich zur HAML-Version, die nur etwa 117 Token hat. Zum Beispiel das Äquivalent des folgenden HTML-Codes <h1>HAML ist eine Template-Engine, Mona</h1> in ERB wird sein <h1>HAML ist eine Template-Engine,<%= @name%></h1>

Kann in HAML wie folgt geschrieben werden %h1 = “HAML is a templating engine,#{@name}” Die Installation ist recht einfach. Sie können sie entweder durch Herunterladen des Plugins oder durch Gem-Installation installieren. $ sudo gem install haml #haml -Schienen Ich habe gerade eine Datei aus einem vorhandenen Projekt übernommen, z. B. .erb Datei und benannte sie um, um eine .haml Verlängerung. Dies ist meine alte .erb-Datei : <center> <table cellspacing="”5″" cellpadding="”5″"> <tbody> <tr> <td> <ul> <li> <%= link_to @story.name, @story.link %></li> </ul> </td> </tr> </tbody> </table> <%= link_to “Add New story”, :action =>&#039;neu&#039; %&gt; </center> und hier ist meine neue .haml-Datei: %center %table{:cellpadding=>5,:cellspacing=>5} %tr %td %ul %li= link_to @story.name, @story.link = link_to “Add New story”, :action =>’new’

Ist Ihnen etwas aufgefallen?

14 Zeilen wurden auf 7 Zeilen reduziert und es sieht auch wunderschön aus

Lassen Sie uns also einige sehr schön codierte Schienenanwendungen erstellen.

Nehmen Sie Kontakt mit uns auf.

Abonnieren Sie die neuesten Updates

zusammenhängende Posts

Hinterlasse einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

German
English
English
Japanese
German
French
Spanish

WhatsApp uns

Beenden Sie die mobile Version