ruby-hyperloop / hyper-react

The project has moved to Hyperstack!!
https://hyperstack.org/
MIT License
285 stars 14 forks source link

support functions as children #250

Open catmando opened 6 years ago

catmando commented 6 years ago

currently you cannot say this:

Foo do
  lambda (x) { DIV { x } }
end

even though its legal JS... i.e. we only allow strings or other components. We should also allow functions, but we probably make render operate on procs to make it work properly...


Foo do
  (lambda (x) { DIV { x } }).render
end

see https://medium.com/merrickchristensen/function-as-child-components-5f3920a9ace9 for more info... but don't be too confused... `children` in React, strangely enough, returns either an element or an array.  i.e. if there is only one child, then children is that child, but if there multiple...  It just makes these examples confusing.  Woah its madness... see https://mxstbr.blog/2017/02/react-children-deepdive/