Uploaded image for project: 'Tapestry 5'
  1. Tapestry 5
  2. TAP5-1707

The RenderNotification Mixin should documented with an example

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Closed
    • Trivial
    • Resolution: Fixed
    • 5.3
    • None
    • tapestry-core

    Description

      The RenderNotification Mixin seems to be an idiomatic way to generate render phase 'like' events during an Ajax rendering. But alas the concept is a tricky one with a couple of gotchas and could really do with a worked example (in the JavaDocs) to fully explain its usage.

      The email thread is :

      http://tapestry.1045711.n5.nabble.com/T5-2-Looking-For-A-RenderNotification-Mixin-Example-td4917771.html

      I've picked out some relevant bits...

      I would like some pre and post render events to be fired on a component after it's handled an Ajax event and returned a Zone which it contains.

      <div t:type="Zone" id="zone">
      <div t:type="Any" t:mixins="RenderNotification">
      <!-- zone content ->
      </div>
      </div>

      When the Any component renders as a whole, it receives the render phase methods which are picked up the Mixin. The Mixin then fires its own component events with the same name, which bubble up the component hierarchy.

      But the beforeRender and afterRender triggered by this mixins are not render events, so they should be handled by onBeforeRender[FromComponentId] and onAfterRender[FromComponentId] methods or @OnEvent(value = "afterRender", component = "id"). In both cases, the component id is optional.

      Nice one - I may have overlooked the onBeginRender() vs beginRender().

      Attachments

        Activity

          People

            bobharner Bob Harner
            slimerdude Steve Eynon
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: