Я получаю эту ошибку в моем расширении.
PackageName \ ModuleName \ Block \ Enhanced
Неверная зависимость в классе PackageName \ ModuleName \ Block \ Улучшено в /var/www/html/app/code/PackageName/ModuleName/Block/Enhanced.php \ Magento \ Store \ Model \ StoreManagerInterface уже существует в контекстный объект
public function __construct(
\Magento\Framework\View\Element\Template\Context $context,
\Magento\Catalog\Model\Session $catalogSession,
\Magento\Store\Model\StoreManagerInterface $storeManager,
array $data = []
)
{
parent::__construct($context, $data);
$this->_catalogSession = $catalogSession;
$this->_storeManager = $storeManager;
}
вам не нужно добавлять
\Magento\Store\Model\StoreManagerInterface $storeManager
в качестве зависимости к вашему классу.У вас уже есть доступ к дополнению
StoreManagerInterface
вMagento\Framework\View\Element\Template\Context
классе.Смотрите это .
Таким образом, вы можете сделать ваш конструктор похожим на это:
И вы все равно сможете получить доступ к
storeManager
переменной-члену, как это$this->_storeManager
.источник
Следующие методы доступны в
Context
object (\Magento\Framework\View\Element\Template\Context
)источник