1

Zend 富有表现力 - 布局

https://github.com/zendframework/zend-expressive-twigrenderer/issues/24

基于这个问题,我想将一个变量从一个动作传递给布局我该如何尝试呢?

$toast = [
    'level'=>'info',
    'msg'  =>'rafael',
    'url'  => null
];

$this->template->addDefaultParam(Template\TemplateRendererInterface::TEMPLATE_ALL,'toast',$this->toastrMessenger->show($toast));

return new HtmlResponse($this->template->render('contentpages::contact',$data));

在我的layout/default.phtml

<?php 
if ( isset($this->toast) ){
echo $this->toast;    
}
?>

</body>
</html>
4

1 回答 1

1

您是否尝试过“addDefaultParam”方法?签名是;

public function addDefaultParam($templateName, $param, $value)

并且您可以设置star (*)$templateName(参见 TemplateRendererInterface::TEMPLATE_ALL),所以我认为布局可以读取它。

您可以在文档中阅读有关它的信息。让我知道它是否有效。

于 2017-11-28T08:37:37.287 回答