[Seaside] Re: Re: Ajax delete component only works if
#childrenstillreport all previously deleted components?
itsme213
itsme213 at hotmail.com
Mon Feb 18 18:54:34 UTC 2008
"Lukas Renggli" <renggli at gmail.com> wrote in message
> It is not nice,
Oh, you have no idea how lovely it looks to me :-)
> but it should work in all situations where you call
> internal rendering methods of different components.
Great. I was trying to figure out why I need to use #in:do: even for a
self-call:
callback: [:r |
self subs add: (C new parent: self).
r in: self do: [self basicRenderOn: r] ]
My interpretations are 1 & 2 below:
1. If an Ajax callback changes self's component tree in a way which
invalidates the last call to #children, use
r in: self do: [self reRenderOn... r].
This ensures that all re-rendered callbacks have the right owner.
2. Anytime you call internal rendering methods of different components
(e.g. via other Component renderXYZOn: r)
in an Ajax callback, use #in:do: to get correct ownership of re-rendered
callbacks.
Thanks - Sophie
More information about the seaside
mailing list