zend-framework - ZEND 2 框架如何异步导航菜单
问题描述
我想优化页面加载以通过 Ajax 异步加载导航菜单。
现在它在 layout.phtml 中以标准方式工作,使用:
echo $this->navigation('CatalogNavigation')->menu()->setPartial('catalog_menu');
该行在控制器中不起作用:
$view = $this->navigation('CatalogNavigation')->menu()->setPartial('catalog_menu'); //this line is not working
return new JsonModel(array('view' => $view()));
解决方案
这是有效的,附加的->get('navigation')
:
$navigation = $this->getServiceLocator()->get('viewHelperManager')->get('navigation');
$catalog_navigation = $navigation('CatalogNavigation');
$view = $catalog_navigation->menu()->setPartial('catalog_menu');
return new JsonModel(array( 'view' => (string)$view ));
推荐阅读
- android - JNI ERROR (app bug): global reference table overflow (max=51200)
- svelte - 将 Autoprefixer 添加到 Svelte & Parcel 项目?
- ruby-on-rails - Rails 管理员未列出记录
- excel - 创建与另一个单元格上设置的值一样多的行
- javascript - 如何根据 typescript 中传递的参数设置属性的类型?
- flask - flaskform 为字符串字段中的值插入数据
- node.js - NodeJS res.status 不是一个函数
- vue.js - Vue - 从组件中检索事件和 v-model
- java - Android:从“下载”文件夹中删除下载的文件快捷方式
- ios - 应用程序因 self.tableView.deleteRows 崩溃(在:[indexPath],与:.fade)