Class RenderNotification


  • @Events({"beginRender","afterRender"})
    @MixinAfter
    public class RenderNotification
    extends Object
    This mixin triggers component event notifications when the attached component enters its BeginRender and AfterRender render phases. A common use of this is to handle the "afterRender" event to generate client-side JavaScript for content just rendered via a Block (this is a common Ajax use case related to partial page rendering). Since AJAX requests don't trigger afterRender or beforeRender render phase events in the containing component or page, this mixin provides a way of accessing those events as component events.

    An example using the Any component within a zone:

     <div t:type="Zone" id="myZone">
         <t:any t:mixins="RenderNotification">
                  <!-- zone content ->
          </div>
     </div>
     
    The MarkupWriter is passed as the event context to your event handler method(s), so your corresponding component or page class might look like:
     void onBeginRenderFromMyZone(MarkupWriter writer)
     {
         writer.element("p");
         writer.write("before item render");
         writer.end();
     }
    
     void onAfterRenderFromMyZone(MarkupWriter writer)
     {
         writer.element("p");
         writer.write("after item render");
         writer.end();
     }
     
    As an alternative, see the Trigger component, which does something similar but as a component rather than a mixin.
    Since:
    5.2.0

    Component Events 
    NameDescription
    afterRender 
    beginRender