В Drupal 9/10 нет jQuery плагина once(), потому при использовании этой функции вы увидите сообщение о том, что once — не является функцией.
Плагин удобен, но его не сложно заменить в коде буквально парой вставок. Он работает по следующему алгоритму — тестируемые элементы маркируются классом ‘processed’, а повторная проверка once() фильтрует тестируемые элементы по наличию этого класса.
Выглядит это обычно так:
|
$('.my-element').once().each( (index, elem) => { ... } ); |
А заменить это можно вот так:
|
$('.my-element:not(.processed)').each( (index, elem) => { $(elem).addClass('processed'); ... } ); |
Drupal 9/10
Написать комментарий
Данная запись опубликована в 08.05.2023 14:59 и размещена в рубрике drupal, jQuery.
Вы можете перейти в конец страницы и оставить ваш комментарий.
Мало букафф? Читайте есчо !
Сентябрь 13, 2023 г.
Весьма распространённый случай, когда в качестве exposed filter используется поле, связанное с таксономией. Так вы получаете набор опций в фильтре для своего представления, которое доступно пользователю.
Также весьма часто некоторые дополнительные ...
Читать
Май 11, 2023 г.
См. основной материал для введения.
Контроллер должен вернуть Json набор пар значений value - label. Ранее в модуле мы уже объявили связь для маршрутизации с нашим контроллером в файле custom_blocks.routing.yml.
Теперь реализуем код.
/src/Controller/ProductSearchAutoCompleteController.php ...
Читать