Magento2 使用 ui_component 禁用组件
Magento2 Disable component using ui_component
如何删除 Magento 默认表单 ui 组件。如图片中的营销 -> 购物车价格规则 -> [select 已创建规则] -> 安排新更新
我想删除规则信息、条件、操作、标签
顶部横幅,在产品描述横幅之后,产品标签
如您所见,与默认的 Magento EE 相比,它有一些额外的 ui_components。这是因为 Amasty_Promo 模块。所以我想删除它。
根据布局处理程序在您的自定义模块中创建一个文件。在这种情况下是 NameSpace/YourModule/view/adminhtml/ui_component/salesrulestaging_update_form.xml
内容如下:
<argument name="data" xsi:type="array">
<item name="config" xsi:type="array">
<item name="componentDisabled" xsi:type="boolean">true</item>
</item>
</argument>
比如rule_information
就是这样:
<?xml version="1.0" encoding="UTF-8"?>
<form xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:module:Magento_Ui:etc/ui_configuration.xsd">
<fieldset name="rule_information">
<argument name="data" xsi:type="array">
<item name="config" xsi:type="array">
<item name="componentDisabled" xsi:type="boolean">true</item>
</item>
</argument>
</fieldset>
</form>
并确保 <argument>
将成为组件的第一个子组件。
隐藏字段:
<field name="custom_field">
<argument name="data" xsi:type="array">
<item name="config" xsi:type="array">
<item name="dataType" xsi:type="string">text</item>
<item name="label" xsi:type="string" translate="true">Custom Field</item>
<item name="formElement" xsi:type="string">input</item>
<item name="source" xsi:type="string">dataProvider</item>
<item name="dataScope" xsi:type="string">custom_field</item>
<item name="componentDisabled" xsi:type="boolean">true</item> <!-- here -->
<item name="validation" xsi:type="array">
<item name="required-entry" xsi:type="boolean">true</item>
</item>
</item>
</argument>
</field>
只需禁用(只读字段)
<field name="custom_field">
<argument name="data" xsi:type="array">
<item name="config" xsi:type="array">
<item name="dataType" xsi:type="string">text</item>
<item name="label" xsi:type="string" translate="true">Custom Field</item>
<item name="formElement" xsi:type="string">input</item>
<item name="source" xsi:type="string">dataProvider</item>
<item name="disabled" xsi:type="boolean">true</item> <!-- here -->
<item name="dataScope" xsi:type="string">custom_field</item>
<item name="validation" xsi:type="array">
<item name="required-entry" xsi:type="boolean">true</item>
</item>
</item>
</argument>
</field>
希望对您有所帮助!
如何删除 Magento 默认表单 ui 组件。如图片中的营销 -> 购物车价格规则 -> [select 已创建规则] -> 安排新更新
我想删除规则信息、条件、操作、标签 顶部横幅,在产品描述横幅之后,产品标签
如您所见,与默认的 Magento EE 相比,它有一些额外的 ui_components。这是因为 Amasty_Promo 模块。所以我想删除它。
根据布局处理程序在您的自定义模块中创建一个文件。在这种情况下是 NameSpace/YourModule/view/adminhtml/ui_component/salesrulestaging_update_form.xml
内容如下:
<argument name="data" xsi:type="array">
<item name="config" xsi:type="array">
<item name="componentDisabled" xsi:type="boolean">true</item>
</item>
</argument>
比如rule_information
就是这样:
<?xml version="1.0" encoding="UTF-8"?>
<form xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:module:Magento_Ui:etc/ui_configuration.xsd">
<fieldset name="rule_information">
<argument name="data" xsi:type="array">
<item name="config" xsi:type="array">
<item name="componentDisabled" xsi:type="boolean">true</item>
</item>
</argument>
</fieldset>
</form>
并确保 <argument>
将成为组件的第一个子组件。
隐藏字段:
<field name="custom_field">
<argument name="data" xsi:type="array">
<item name="config" xsi:type="array">
<item name="dataType" xsi:type="string">text</item>
<item name="label" xsi:type="string" translate="true">Custom Field</item>
<item name="formElement" xsi:type="string">input</item>
<item name="source" xsi:type="string">dataProvider</item>
<item name="dataScope" xsi:type="string">custom_field</item>
<item name="componentDisabled" xsi:type="boolean">true</item> <!-- here -->
<item name="validation" xsi:type="array">
<item name="required-entry" xsi:type="boolean">true</item>
</item>
</item>
</argument>
</field>
只需禁用(只读字段)
<field name="custom_field">
<argument name="data" xsi:type="array">
<item name="config" xsi:type="array">
<item name="dataType" xsi:type="string">text</item>
<item name="label" xsi:type="string" translate="true">Custom Field</item>
<item name="formElement" xsi:type="string">input</item>
<item name="source" xsi:type="string">dataProvider</item>
<item name="disabled" xsi:type="boolean">true</item> <!-- here -->
<item name="dataScope" xsi:type="string">custom_field</item>
<item name="validation" xsi:type="array">
<item name="required-entry" xsi:type="boolean">true</item>
</item>
</item>
</argument>
</field>
希望对您有所帮助!