Magento2 - добавить блок пользовательских полей после отправки - PullRequest
0 голосов
/ 06 января 2019

Хотите добавить пользовательские поля после способа доставки на странице оформления заказа magento 2. Я создал пользовательский модуль с checkout_index_index.xml и смог добавить блок пользовательских полей после адреса доставки с <item name="before-form" xsi:type="array">, но я хочу его после способа доставки.

Когда клиент выбирает способ доставки, этот блок отображается и скрывается, чтобы предоставить дополнительную информацию о выбранном способе доставки

Найдите изображение ниже для получения дополнительной информации.

enter image description here

спасибо!

1 Ответ

0 голосов
/ 10 января 2019

Мне нужно было сделать то же самое. Оформление заказа Magento выдает регион в соответствии с методами доставки, используя следующее:

<div id="onepage-checkout-shipping-method-additional-load">
    <each args="getRegion('shippingAdditional')" render="" />
</div>

Однако элемент shippingAdditional на самом деле не определен в базе кода magento. Таким образом, чтобы ваши поля отображались под способами доставки, вы можете использовать вышеуказанный регион. Для этого вам нужно изменить родительский элемент на <item name="shippingAddress" xsi:type="array"> вместо <item name="before-form" xsi:type="array"> и убедиться, что ваш элемент называется <item name="shippingAdditional" xsi:type="array">. Примерно так:

...
<item name="shippingAddress" xsi:type="array">
    <item name="children" xsi:type="array">
        <item name="shippingAdditional" xsi:type="array">
            <item name="displayArea" xsi:type="string">shippingAdditional</item>
            <!-- The rest of your items config here... -->
        </item>
    </item>
</item>
...

Обратите внимание , что вам нужно определить <item name="displayArea" xsi:type="string">shippingAdditional</item> как без таковой, который не будет отображаться.

Затем вы можете использовать некоторые javascript / knockout, чтобы показать и скрыть эти поля в зависимости от выбранного метода доставки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...