1

在某些情况下,我有 ZF2 应用程序,我想从路由中获取参数“编号”并使其可用于所有视图。我尝试使用事件,但我的解决方案的问题是 $number 仅在布局中可用,而不在视图中可用。这是我的代码

$sharedEvents = $moduleManager->getEventManager()->getSharedManager();
$sharedEvents->attach( __NAMESPACE__, 'dispatch', function ( $e ) {
    $route = $e->getRouteMatch();
    $number = $route->getParam( 'number' );
    $view = $e->getViewModel();
    $view->setVariable( 'searchQuery', $number );
}, 90 );

有什么想法吗?

4

2 回答 2

3

问题解决了它可以通过视图访问

$this->layout()->getVariable('searchQuery');

有关此主题的更多信息,请点击此处

于 2012-12-11T12:36:09.130 回答
0

也许这可以帮助你:

$childView = $e->getViewModel()->getChildren();

$childView[0]->searchQuery = $number;
于 2013-04-15T10:03:49.377 回答