Questions tagged «render»

4
Magento 2-通过list.phtml渲染自定义产品集合
类别页面(前端)的产品网格是通过catalog_category_view.xml中的布局呈现的。 可以说我有一个自定义产品集合(通过 ProductRepositoryInterface::getList($searchCriteria) method 在自定义块类中并希望呈现此集合。呈现的结果应在前端显示为产品网格(就像任何类别页面一样)。 如何才能做到这一点 ? 通过查看catalog_category_view.xml有两条重要的线,它们负责呈现产品集合: <block class="Magento\Catalog\Block\Category\View" name="category.products" template="Magento_Catalog::category/products.phtml"> <block class="Magento\Catalog\Block\Product\ListProduct" name="category.products.list" as="product_list" template="Magento_Catalog::product/list.phtml"> 如何为这些模板文件提供自定义产品集合,以便它们呈现我的集合? 如果我错了,请纠正我。 这是我的代码块的样子: <?php namespace Mod\Mod1\Block; use Magento\Framework\View\Element\Template; class Main extends Template { protected $_filterBuilder; protected $_filterGroupArray; protected $_filterGroupBuilder; protected $_searchCriteriaBuilder; protected $_productRepository; protected $_productFactory; protected $_list; public function __construct( \Magento\Framework\View\Element\Template\Context $context, \Magento\Catalog\Api\ProductRepositoryInterface …

1
我如何在adminhtml中的基因敲除渲染后触发代码运行
更新:您可以直接访问视图模型。如果需要触发代码以在渲染后运行,请使用MutationObserver。只要有一个好的示例,我就会发布我的代码。 原始问题: 我们有很多电话打入订单。我正在研究一个模块,该模块会使用webapi / jsonp调用自动在admin->客户->从我们的CRM解决方案中创建数据。这样,magento中的数据不会创建我们已经存储在“主数据库”中的数据重复项。 我剩下要做的一项任务是添加客户的地址。乍一看,这似乎很简单,直到我意识到基因敲除+ magentojs如何在客户表单上呈现一切时,才使我无法捕获模板化元素。在以编程方式删除所有地址并创建新地址之后,我想花些时间来尝试捕获字段集(输入元素)。 如果您想知道为什么要这样做,我的代码的一部分会弹出一个提示,然后说:“嘿,这个人已经存在。您要使用它们吗?” 它将删除您已经输入的所有内容,并以正确的信息替换它。然后呼叫中心对其进行验证,即yadda yadda。 我将分享到目前为止的代码,但是不能正常工作。仅供参考,它扩展了Abstract以捕获“ onUpdate”事件。不要因为试图访问某个收藏夹项目中的收藏夹而责备我。我无法提出一种更好的方法来捕获onUpdate事件并仍然查看所有字段。 我也完全理解哪里出了问题,我只是不知道如何解决它。问题是我假设由.activate()调用生成的元素将在下面立即可用 document.getElementsByClassName('admin__fieldset') 这只是错误的逻辑。理想情况下,我希望能够拉出字段集内容而不必求助于该UI技巧,然后,一旦我完成所有设置,就将其渲染出来。 我不想诉诸jQuery黑客来监视dom更新。 // jsonService variable is available here because it is in the php template render. see // Stti/Customer/view/adminhtml/templates/javascriptinject.phtml define(['ko','jquery','underscore','originalAbstract','uiElement', 'uiCollection'], function(ko, $, _, Abstract, Element, Collection) { "use strict"; var theArray = { formFields: [], …
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.