BH (šablonový motor)

BH
Typ šablonový engine
Vývojář Společenství BEM
Zapsáno v JS , PHP (oficiální verze)
Operační systém Multiplatformní software
Licence Licence MIT
webová stránka bem.github.io/bh

BH ( B EM H TML ) je kompilátor deklarativní šablonový engine pro JS .

BH umožňuje upravovat uzly stromu DOM stejným způsobem jako CSS – v deklarativní podobě.

Příklad

S prohlášením JS :

bh . match ( 'tlačítko' , funkce ( ctx ) { ctx . tag ( 'tlačítko' ); }); bh . match ( 'button_legacy' , function ( ctx , json ) { ctx . tag ( 'input' ); ctx . attr ( 'type' , 'button' ); ctx . attr ( 'value' , json . content ); }) ; bh . match ( 'button_submit' , function ( ctx , json ) { ctx . tag ( 'input' ); ctx . attr ( 'type' , 'submit' ); ctx . attr ( 'value' , json . content ); }) ;

Nebo podobná deklarace v syntaxi PHP :

$bh -> match ( 'tlačítko' , funkce ( $ctx ) { $ctx -> tag ( 'tlačítko' ); }); $bh -> match ( 'button_legacy' , funkce ( $ctx , $json ) { $ctx -> tag ( 'input' ); $ctx -> attr ( 'type' , 'button' ); $ctx -> attr ( 'value' , $json -> content ); }); $bh -> match ( 'button_submit' , funkce ( $ctx , $json ) { $ctx -> tag ( 'input' ); $ctx -> attr ( 'type' , 'submit' ); $ctx -> attr ( 'value' , $json -> content ); });

A vstupní údaje:

[ { "block" : "button" , "content" : "Jen tlačítko" }, { "block" : "button" , "mods" : { "submit" : true }, "content" : "Odeslat tlačítko" } , { "block" : "button" , "mods" : { "legacy" : true }, "content" : "Starší tlačítko" }, { "block" : "button" , "mods" : { "starší " : true , "submit" : true }, "content" : "Starý styl tlačítka pro odeslání" } ]

Dostáváme výsledek:

< button class = "button" > Jen tlačítko </ button > < input class = "button button_submit" type = "submit" value = "Submit button" /> < input class = "button button_legacy" type = "button" value = "Starší tlačítko" /> < input class = "button button_legacy button_submit" type = "submit" value = "Starý styl tlačítka pro odeslání" />

Implementace

Oficiální implementace BH jsou napsány v JavaScriptu a PHP .

Viz také

Odkazy

Poznámky