Wordpress Woocommerce React - нужна помощь

2 000 руб. за проект
24 июня 2024, 18:31 • 3 отклика • 37 просмотров
Добрый день!
Делаю плагин для автозаполнение адреса в Woocommerce.
В обычной корзине всё прекрасно работает, а вот в новой корзине, которая на React - не работает.
Суть проблемы:
Устанавливаю значение input (поле адреса) с помощью JS, совершаю клик по другому полю, компонент React рендерится и устанавливается старое значение.
После ввода адреса рендеринг компонента срабатывает раньше, чем установка моего значения адреса. Поэтому он всегда хранит старый адрес.

Подробнее в видео: https://disk.yandex.ru/i/joTDhEuQK8ZzQw

Метод с установкой значения адреса:

function setInputValue(input, value, fromSetInput) {
// Установить значение напрямую
var nativeInputValueSetter = Object.getOwnPropertyDescriptor(window.HTMLInputElement.prototype, 'value').set;
nativeInputValueSetter.call(input[0], value);

// Обновить атрибут value
input.attr('value', value);

//И так пробую стрегирить
input.val(value).trigger('change');

// И так
var inputEvent = new Event('input', { bubbles: true });
inputEvent.fromSetInput = fromSetInput || false;
input[0].dispatchEvent(inputEvent);

// И так
var changeEvent = new Event('change', { bubbles: true });
changeEvent.fromSetInput = fromSetInput || false;
input[0].dispatchEvent(changeEvent);

}
Отзывы
Avatar r50 a6ce93fe35b158fd29ba0e8681c918c22117160e9586a56eee4ffbc20df9bda1
Заказчик
Сложно описать словами степень своего удовлетворения от работы с Русланом!!
Вежливый профессионал! Решил как по мне не посильную задачу в режиме реального времени. Минут за 10 изучил работу моего кода лучше чем я за несколько недель.
Сенсей короче! Спасибо тебе большое! Удачи!
6 месяцев назад
R50 4f530a52a6b90013415d437c6a1d4c09
Фрилансер
Заплатил как договаривались, никаких проблем.
6 месяцев назад