[Seaside] #render: and #children. What if I don't?

Mariano Martinez Peck marianopeck at gmail.com
Thu Oct 16 16:43:10 UTC 2014

Hi guys,

>From what I understand, if we have a component called X which, as part of
the #renderConentOn: (or derivative), does:

ComponentX >> renderContentOn: html
html render: self componentY

Then we need to add componentY to the #chidlren:

ComponentX >> children
^ Array with: self componentY

So..not the question is...it seems in some places I forgot to add it to
#chidlren and the component still render correctly. At the same time, I
remember once I was fighting to find a bug and it was exactly because I
forgot to add the component to #children. So... what exactly happens if I
DON'T add the component as a #children? What does it get broken?

The second question is...is a bit of a pain the #children. Why? Because I
must store the component somewhere...which I may not requiere that. For
example, if I have this code:

html render: (MyWebMessageComponent new errorMessage: 'Problem with xxxx';

then I must define an instVar for that component, assign to it before
render, and then render...

so the second question is...for this type of component that I render only
"once" (the component is instantiated as part of the rendering phase and
dead after), do I also have to add it to #children?

Thanks in advance for any clarification.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.squeakfoundation.org/pipermail/seaside/attachments/20141016/b40072fc/attachment.htm

More information about the seaside mailing list