Zend framework2 如何在Zend Framework 2.2中为每个不同的模块设置布局

Zend framework2 如何在Zend Framework 2.2中为每个不同的模块设置布局,zend-framework2,Zend Framework2,如何在Zend Framework 2.2中为每个不同的模块设置不同的布局文件 例如,我想有不同的布局为'管理'和'应用'模块 在config/autload.php中使用类似的内容: array( 'module_layouts' => array( 'Application' => 'layout/application', 'ZfcUser' => 'layout/user', ), ); 另一个替代者——ZF2模块系统的

如何在Zend Framework 2.2中为每个不同的模块设置不同的布局文件

例如,我想有不同的布局为'管理'和'应用'模块

config/autload.php
中使用类似的内容:

array(
    'module_layouts' => array(
        'Application' => 'layout/application',
        'ZfcUser' => 'layout/user',
    ),
);
另一个替代者——ZF2模块系统的主要作者IIRC——在模块的
module.php
文件中使用此选项:

namespace MyModule;

use Zend\ModuleManager\ModuleManager;

class Module
{
    public function init(ModuleManager $moduleManager)
    {
        $sharedEvents = $moduleManager->getEventManager()->getSharedManager();
        $sharedEvents->attach(__NAMESPACE__, 'dispatch', function($e) {
            // This event will only be fired when an ActionController under the MyModule namespace is dispatched.
            $controller = $e->getTarget();
            $controller->layout('layout/alternativelayout');
        }, 100);
    }
}
希望其中一个能对您起作用。

config/autload.php
中使用类似的内容:

array(
    'module_layouts' => array(
        'Application' => 'layout/application',
        'ZfcUser' => 'layout/user',
    ),
);
另一个替代者——ZF2模块系统的主要作者IIRC——在模块的
module.php
文件中使用此选项:

namespace MyModule;

use Zend\ModuleManager\ModuleManager;

class Module
{
    public function init(ModuleManager $moduleManager)
    {
        $sharedEvents = $moduleManager->getEventManager()->getSharedManager();
        $sharedEvents->attach(__NAMESPACE__, 'dispatch', function($e) {
            // This event will only be fired when an ActionController under the MyModule namespace is dispatched.
            $controller = $e->getTarget();
            $controller->layout('layout/alternativelayout');
        }, 100);
    }
}
希望其中一个对你有用