0
$this->_helper->layout->disableLayout();
$this->_helper->viewRenderer->setNoRender(TRUE);

这是我们通常用来禁用视图的方法。我的问题是为什么我们需要disableLayout()?当 Layout 本身是一个视图助手时,为什么我们需要同时禁用?

4

2 回答 2

2

要禁用您需要使用的操作的布局

$this->_helper->layout->disableLayout();

例如,如果您对操作使用 Ajax 请求,您可以使用它,并且此请求的输出将是此操作的关联视图(phtml)。

如果您不想使用此关联视图,则需要添加以下内容

$this->_helper->viewRenderer->setNoRender(TRUE);

现在如果你想使用不同的视图文件,你可以使用以下

$this->renderScript('other.phtml');
于 2013-11-14T08:59:20.860 回答
2

因为 ,

$this->_helper->viewRenderer->setNoRender(TRUE); 

仅禁用视图,即与操作关联的 phtml 脚本。

但是如果你只使用它,整个应用程序的核心布局将被加载..其中将包含一些 css 或 js 或任何与作为布局一部分的中心主题相关的任何内容。

如果您想删除所有这些并且只想要空白页,那么您必须同时使用这两个..

于 2013-11-14T08:15:31.297 回答