我在我的服务中引发了异常。如何显示由没有错误模板的异常引发的flashMessage
这个异常是由连接监听器处理:
$this->listeners[] = $events->attach(MvcEvent::EVENT_RENDER_ERROR, array($this, 'handleException'));
$this->listeners[] = $events->attach(MvcEvent::EVENT_DISPATCH_ERROR, array($this, 'handleException'));
处理异常被设计成flashMessage:现在
public function handleException(MvcEvent $event)
{
$exception = $event->getParam('exception');
if ($exception) {
$flashMessenger = new FlashMessenger();
$flashMessenger->setNamespace('danger');
$flashMessenger->addMessage($exception->getMessage());
$event->getViewModel()->setVariable('flashMessages', $flashMessenger->getMessages());
}
}
,与此代码我怎么能留在同一页面里异常被提出。我无法显示每个例外的错误/模板,我必须让我的用户在同一页面上进行confort。
这个问题是这样的一个的以下部分:
谢谢你,这真的很好;我不能这样做,因为每一个动作都会引发一个异常,它太重了,还有很多重复的代码。你有没有想法让这个更高效? – Hooli
@Hooli我已更新,虽然我没有办法测试这个,所以如果它能正常工作,我会感兴趣。 – AlexP
好吧,我会给你一个关于这个promis的反馈。 – Hooli