zendframework2-如何在zf2控制器中附加css和javascript文件

zend framework2 - How to attach css and javascript files in zf2 controller?

本文关键字:css javascript 文件 zf2 控制器 zendframework2-      更新时间:2023-09-26

我在zend控制器中附加了一些样式表,但显示了空白页面,我如何在zend控件中包含样式表和javascript文件?这是我的代码:

public function showAction()
    {       
            //css
            $this->viewHelperManager->get('headLink')->appendStylesheet('/css/style.css');
            $this->viewHelperManager->get('headLink')->appendStylesheet('/css/bootstrap-theme.min.css');
            $this->viewHelperManager->get('headLink')->appendStylesheet('/css/tweaks.css');
            $this->viewHelperManager->get('headLink')->appendStylesheet('/css/fullcalendar.css');
            $this->viewHelperManager->get('headLink')->appendStylesheet('/css/fullcalendar.print.css');
            $this->viewHelperManager->get('headLink')->appendStylesheet('/css/jquery-ui.min.css');
            $this->viewHelperManager->get('headLink')->appendStylesheet('/css/jquery.simple-dtpicker.css');
            //js
            $this->viewHelperManager->get('headScript')->appendFile('/admin_static/js/jquery-ui-1.10.3.custom/js/jquery-ui-1.10.3.custom.min.js');
            $id = (int) $this->params()->fromRoute('id', 0);
            if (!$id) {
                return $this->redirect()->toRoute('calendar', array(
                    'action' => 'create'
                ));
            }
            $calendar = $id;
            $dm = $this->getServiceLocator()->get('doctrine.documentmanager.odm_default');
            $eventshow = $dm->createQueryBuilder('Calendar'Document'Calendar')
            ->hydrate(false)
            ->field("id")->equals($id)
            ->getQuery()->execute();
            $array = array();
            if($eventshow && !is_null($eventshow) && is_object($eventshow)){                    
                foreach($eventshow as $key=>$value) {   
                $array[] = array(
                        'calendar_id' => $value['_id'],
                        'user_id' => $value['user_id'],
                        'title' => $value['title'],
                        'description' => $value['description'], 
                    );
                }
            }
            return array('calendar' => $calendar , 'calendardata' => $array);
    }

"空白页"仅表示正在生成错误,但您已关闭display_errors。请查看web服务器错误日志,了解实际问题是什么(这也将帮助您调试未来的问题)。

从您的代码来看,我想问题出在对$this->viewHelperManager的调用上,因为没有这样的东西(除非您在控制器的其他地方设置了它)。

你可能想要:

$this->getServiceLocator()->get('viewhelpermanager')->get('headLink')->appendStylesheet('/css/style.css');

尽管如果您需要那么多视图助手调用,那么将headLink助手作为依赖项传入可能是值得的。