@lilactown sounds like what you said assumes that the user can only go via the macro, but what when the user needs to call the thing with apply
? IME we will always need to non-macro version, runtime calls are non avoidable in some cases
the bandaid you mention can be just the solution IMO (just use that on styles as-is)
I’ve never needed the runtime version in my code fwiw
but I want to support it
this thing with the apply caught me regularly until it clicked finaly and I could use it, but I guess that was because I was new to cljs+react
how would this look like?
<Form.Field name='name.first'/>
in #helix($ Form.Field {:name "name.first"})
this is why I never liked jsx, I always believed that keeping the original createElement function semantics is important
Thank you. Struggled a bit there. But did get it
np. I think it could be ($ (.Field Form) {:name "name.first"})
too
That would require Field
to be a function of Form
, no?
it is
I mean, "`($ Form.Field ...)`" already means it is a react component, so it's a function
if you use the postfix notation it’s (.-Field Form)
(.Field Form)
invokes Field
immediately as a function. .-
takes it as a value using property access