我已经在Magento 2中进行了一些工作,并且已经覆盖了我已经安装的某些模块(在前端)。
但是今天,我遇到了以前从未遇到过的事情。我一直在使用的模块内部有一个块,其中包含以下内容:
<referenceBlock name="product.info.details">
<block class="Vender\Module\Block\Catalog\Related" name="posts.tab" as="blog.posts"
template="Vender_Module::catalog/posts.phtml" group="detailed_info">
</block>
</referenceBlock>
它设置其名称:
posts.tab
然后使用as允许通过以下方式调用它:
as =“ blog.posts”
当我尝试使用as名称引用要删除的块时,我注意到它没有从页面中删除它:
<referenceBlock name="product.info.details">
<referenceBlock as="blog.posts" remove="true"/>
</referenceBlock>
所以我去看看的页面居然要求在前端(只是柜面它被改名别的地方或者没有使用posts.tab名) -块的名字被称为与posts.tab,这是罚款因为我可以引用该块将其删除。很好。
但是我的问题是,为什么不使用as而不是使用name来拖动块?
其次,as中的意义是什么,因为显然,块无论如何都不能有冲突的名称,并且应该是唯一的-但我可能完全错了。