hara.model.spec-js.jsx
emit-jsx
added in 4.0
(emit-jsx arr grammar mopts)can perform addition transformation if :grammar :jsx is false
(emit-jsx [:div {:className ’a} :p ’(hello 1 2 3)] js/+grammar+ {:emit {:lang/jsx false}}) => (std.string/| “React.createElement(” " "div"," " {"className":a}," " React.createElement("p",{},hello(1,2,3))" “)”)
emit-jsx-inner
added in 4.0
(emit-jsx-inner arr grammar mopts)emits the inner blocks for a jsx form
emit-jsx-map-params
added in 4.0
(emit-jsx-map-params params grammar mopts)emits jsx map params
(emit-jsx-map-params ’{:a (+ 1 2 3) :b “abc”} js/+grammar+ {}) => ’(“a={1 + 2 + 3}” “b="abc"”)
emit-jsx-params
added in 4.0
(emit-jsx-params params grammar mopts)emits jsx params
(emit-jsx-params {:a 1 :b 2} js/+grammar+ {}) => " " “a={1} b={2}”
(emit-jsx-params ’#{a b (:.. c)} js/+grammar+ {}) => " " “a={a} b={b} {…c}”
emit-jsx-raw
added in 4.0
(emit-jsx-raw arr grammar mopts)emits the jsx transform
(emit-jsx-raw [:div {:className ’a} :p ’(hello 1 2 3)] js/+grammar+ {}) => “(\n <div className={a}>
{hello(1,2,3)}