我想在我的自定义帮助程序中使用WebinoImageThumb moudle,但是当我想在帮助程序工厂中创建此模块的实例时,我收到此错误:
Zend\View\HelperPluginManager::get was unable to fetch or create an instance for WebinoImageThumb
但我可以毫无问题地访问控制器中的实例。
这是我收到错误的代码:
public function getViewHelperConfig()
{
return array(
'factories' => array(
'ImageLib' => function ($sm)
{
$WebinoImageThumb = $sm->get('WebinoImageThumb');
return new \Base\view\helper\ImageLib($WebinoImageThumb);
}
)
);
}
答案 0 :(得分:4)
遗漏的问题是:WebinoImageThumb
是什么类型的条目。它是 ViewHelper ,是 ControllerPlugin 还是服务?
可能不是ViewHelper ,因为如果是,您可以像访问它一样访问它。
如果是服务,您可以从ServiceManager获取
return new \Base\View\Helper\ImageLib(
$sm->getServiceLocator()->get('WebinoImageThumb')
);
如果是 ControllerPlugin ,您可以从ControllerPluginManager
return new \Base\View\Helper\ImageLib(
$sm->getServiceLocator()->get('ControllerPluginManager')->get('WebinoImageThumb')
);