我想在我的Mojo模板中使用花哨的后缀解除引用。我想我能做到
% use experimental 'postderef';
位于每个模板文件的顶部,但这似乎是重复和蹩脚的。有没有办法让Mojolicious将我的pragma首选项导入每个模板的词法范围?
答案 0 :(得分:6)
您可以使用自己的选项重新加载EPRenderer插件(默认为没有选项),选项template
包含Mojo::Template的默认值。
use Mojolicious::Lite;
plugin 'EPRenderer', template => { prepend => 'use experimental "postderef";use Data::Dump "pp";'};
get '/' => sub { shift->render('index'); };
app->start;
__DATA__
@@ index.html.ep
% layout 'default';
% title 'Welcome';
Welcome to the Mojolicious real-time web framework!
% my $a = [[0]];
% push $a->[0]->@*, 1;
%= pp($a)
@@ layouts/default.html.ep
<!DOCTYPE html>
<html>
<head><title><%= title %></title></head>
<body><%= content %>
</body>
</html>
答案 1 :(得分:0)
如果您在Mojolicious App中使用该pragma,它也适用于模板。
如果没有,那么您可以将其添加到布局中并使用模板中的布局。