Zend framework2 缺少Zend 2导航呈现活动类

Zend framework2 缺少Zend 2导航呈现活动类,zend-framework2,zend-navigation,Zend Framework2,Zend Navigation,在zf2中呈现导航时,我确实有问题。我没有发现其他人有这个问题。但也许你有线索 尽管一切似乎都配置正确,但由于一切正常,呈现zend navigation不会用class=active标记活动路线 这是我的module.config.php的一部分: 'service_manager' => array( 'factories' => array( 'app_navigation' => 'Zend\Navigation\Service\

在zf2中呈现导航时,我确实有问题。我没有发现其他人有这个问题。但也许你有线索

尽管一切似乎都配置正确,但由于一切正常,呈现zend navigation不会用class=active标记活动路线

这是我的module.config.php的一部分:

'service_manager' => array(
        'factories' => array(
            'app_navigation' => 'Zend\Navigation\Service\DefaultNavigationFactory',
            'User\Acl\Service' => 'User\Acl\ServiceFactory',
            'User\Auth\Service' => 'User\Authentication\ServiceFactory',
        ),
    ),

//global config key for all navigation configurations
'navigation' => array(
     //name of the DefaultNavigation created by DefaultNavigationFactory
     'default' => array(
         //config of first page
         'welcome' => array(
             'label' => 'Home',
             'route' => 'welcome',
             'controller' => 'People\Controller\PeopleController',
             'action' => 'welcome',
             'type' => 'uri',
             'uri' => '/welcome',
             'module'    => 'TheGlobalDatabase',
         ),
...
这是路线:

     'router' => array(       
        'routes' => array(
           'welcome' => array(
                'type'    => 'segment',
                'options' => array(
                    'route'    => '/welcome',
                    'defaults' => array(
                        'controller' => 'People\Controller\People',
                        'action'     => 'welcome',
                    ),
                ),
            ),
我会在布局中重复导航,如下所示:

echo $this->navigation()->menu()->renderMenu('app_navigation',array('ulClass'=>'nav navbar-nav welcome')); 
也许你有个提示,还有什么要检查的


谢谢大家!

您的路线和导航配置缺失或不正确

航行

在使用数组配置时,您永远不需要使用类型param。导航工厂的工作是确定类型是uri还是mvc。只需删除它的配置

导航控制器应该是控制器的注册服务名称,而不是完全限定的类名。”控制器'=>'人\控制器\人'

使用route参数时也是如此

通过这些更改,导航非常简单

 'welcome' => array(
   'label' => 'Home',
   'route' => 'welcome'
 );
路线

它可能是一个文本路由,因为没有传入任何参数,并且缺少may_terminate参数


非常非常感谢!清理工作确实立即起到了作用!
'welcome' => array(
    'type'    => 'literal',
    'options' => array(
        'route'    => '/welcome',
        'defaults' => array(
            'controller' => 'People\Controller\People',
            'action'     => 'welcome',
        ),
    ),
    'may_terminate' => true,
),