В 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.
Вы можете перейти в конец страницы и оставить ваш комментарий.
Мало букафф? Читайте есчо !
Август 10, 2023 г.
Допустим, вы получаете следующие данные - заголовок, текст статьи, и теги. При этом данные поставляются на двух языках - 'ru' и 'en'. Вам требуется программно сохранить статью и её перевод.
Я полагаю, что уже активирован модуль Content Translation, ...
Читать
Май 11, 2023 г.
См. основной материал для введения.
Контроллер должен вернуть Json набор пар значений value - label. Ранее в модуле мы уже объявили связь для маршрутизации с нашим контроллером в файле custom_blocks.routing.yml.
Теперь реализуем код.
/src/Controller/ProductSearchAutoCompleteController.php ...
Читать
Октябрь 17, 2024 г.
Особенно полезно, когда вы использовали проект как шаблон для другого сайта и надо почистить данные. Друпал хоть и показывает статистику использования файлов, но удалять файлы не позволяет из реестра /admin/content/files.
Напишем небольшой скрипт, ...
Читать
Январь 9, 2024 г.
Функция считается устаревшей, начиная с версии ядра 9.3, в 10-й версии функция удалена из кода.
В новом API нужно воспользоваться одним из сервисов ядра, которые реализуют нужную функцию.
Сервис extension.list.module - реализует функции, связанные ...
Читать