如何以编程方式从布局中检索容器?
我希望能够执行以下操作...
$container = $layout->getContainer('name');
$container->setAttribute('htmlClass', 'class');
如何以编程方式从布局中检索容器?
我希望能够执行以下操作...
$container = $layout->getContainer('name');
$container->setAttribute('htmlClass', 'class');
所以我就是那个人,尽量不要直接使用对象管理器。直接使用还是不使用ObjectManager?
<?= $block->getLayout()->renderNonCachedElement('top-right-wrapper'); ?>
-or-
<?= $this->getLayout()->renderNonCachedElement('top-right-wrapper'); ?>
以上两种方法都可以,但不鼓励使用 $this。Magento 2 模板:使用$block
或$this
?
在核心调试很少的情况下,我发现有一种方法可以使用名称作为参数返回任何容器、块或 UIcomponent html。
$objectManager = \Magento\Framework\App\ObjectManager::getInstance();
$layoutObj = $objectManager->get('Magento\Framework\View\Layout');
$html = $layoutObj->renderNonCachedElement('top-right-wrapper');
echo $html;
* 将右上角的包装器替换为您的块、容器或 UI 组件名称。