Mason::Plugin::Defer - Defer computing parts of output until the end of the
request
<head>
<title><% $m->defer(sub { $m->page->title }) %></title>
% $.Defer {{
% my $content = join(", ", @{ $m->page->meta_content });
<meta name="description" content="<% $content %>">
% }}
<body>
...
The defer feature allows sections of output to be deferred til the end of
the request. You can set up multiple deferred code blocks which will execute
and insert themselves into the output stream at request end.
- defer (code)
- Returns a marker string that is unique and will not appear in normal
output. At the end of the request, each marker string is replaced with the
output of its associated code. e.g.
<title><% $m->defer(sub { $m->page->title }) %></title>
- Defer
- Applies "$m->defer" to the content
block. e.g.
% $.Defer {{
% my $content = join(", ", @{ $m->page->meta_content });
<meta name="description" content="<% $content %>">
% }}
Jonathan Swartz <swartz@pobox.com>
This software is copyright (c) 2012 by Jonathan Swartz.
This is free software; you can redistribute it and/or modify it
under the same terms as the Perl 5 programming language system itself.