The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

comment

    # Move all the scripts, styles and links to the head area
    # TODO this probably doesn't work if the stuff is in a component
    # inside a component.
    $processed_component->find('link:not(head link)')->each(sub {
        $dom->append_link_uniquely($_);
        $_->remove;
    });
    $processed_component->find('style:not(head style)')->each(sub {
        my $content = $_->content || '';
        $dom->append_style_uniquely($_);
        $_->remove;
    });
    $processed_component->find('script:not(head script)')->each(sub {
        my ($e, $num) = @_;
        my $content = $dom->content || '';
                warn "moving $e to $dom";

        $dom->append_script_uniquely($e);
        $_->remove;
    });

NAME

Template::Lace::Renderer

SYNOPSIS

    TBD

DESCRIPTION

Renderer for the model. Not really end user aimed. See Template::Lace for main overview.

METHODS

This class defines the following public methods

call

Allows you to have the renderer 'call' a method into the model, with the current DOM. Takes either a coderef or a string (that must be the name of a method in the model. Example:

    $renderer->call(sub {
      my ($model, $dom) = @_;
      $model->add_debug($dom);
    }, @args);

    $renderer->call('add_debug', @args);

Are both the same as

   $renderer
     ->model
     ->add_debug($renderer->dom, @args);

You might find this is a useful shortcut (or not).

call_at

Basically similar to "call" except allows you to specify a CSS match to set the DOM.

    $renderer->call_at('#debug','add_debug', @args);

Is basically a shortcut for:

    my $dom = $renderer->dom->at('#debug);
   $renderer->model->add_debug($dom, @args);

SEE ALSO

Template::Lace.

AUTHOR

Please See Template::Lace for authorship and contributor information.

COPYRIGHT & LICENSE

Please see Template::Lace for copyright and license information.