Как удалить modal.js и связанные с ним файлы
Мне нужно удалить modal.js и это связанные файлы по всему сайту. Он доступен в каталоге поставщиков, и мне нужно удалить его из DOM.
Я нашел похожий вопрос, но на него никто не ответил: Как удалить modal.js со всех страниц в magento 2.2
Я также пытался удалить тег и добавить в него имена файлов js, связанные с модальностью, но это не сработало для меня
2 answers
Модальный пользовательский интерфейс - это глобальный компонент пользовательского интерфейса, и он использует по требованию (это означает, что вы не можете удалить его с помощью XML-структур, таких как <remove src="modal.js"/>
или что-то подобное).
Он используется не только на интерфейсе, но также широко используется в adminhtml. Например:
Src/поставщик/magento/модуль-каталог/просмотр/adminhtml/шаблоны/каталог/категория/дерево.phtml
Это часть мини-карты Magento (Боковая панель корзины)
Src/vendor/magento/module-checkout/view/frontend/web/template/sidebar.html
Однако, если вы не хотите использовать всплывающее окно аутентификации (всплывающее окно входа на странице оформления заказа). Вы можете попытаться удалить этот блок в XML с помощью этого
<referenceBlock name="authentication-popup" remove="true"/>
Полное удаление Magento_Ui/js/modal/modal
невозможно в Magento 2! Это наверняка нарушит множество функций. Конечно, теоретически вы все еще можете отключить всю функциональность modal
Пользовательский интерфейс с JS смешивать вот так:
/**
* StackOverflow No Modal :(
*
* @category Mage
*
* @author Toan Nguyen <https://github.com/nntoan>
*/
define([
'jquery',
'uiRegistry',
'mage/utils/wrapper',
'mage/validation'
], function ($, registry, wrapper) {
'use strict';
return function (modal) {
modal.prototype._create = wrapper.wrap(modal.prototype._create, function (original) {
return null;
});
return modal;
};
});
Если я вас неправильно понял, не стесняйтесь оставлять комментарий:)
Чтобы удалить статические ресурсы, связанные на странице, внесите изменения, аналогичные приведенным ниже, в тему, расширяющую
app/design/frontend/<Vendor>/<theme>/Magento_Theme/layout/default_head_blocks.xml
:
<page xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:View/Layout/etc/page_configuration.xsd">
<head>
<!-- Remove local resources -->
<remove src="css/styles-m.css" />
<remove src="my-js.js"/>
<remove src="Magento_Catalog::js/compare.js" />
<!-- Remove external resources -->
<remove src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/css/bootstrap-theme.min.css"/>
<remove src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/js/bootstrap.min.js"/>
<remove src="http://fonts.googleapis.com/css?family=Montserrat" />
</head>
</page>
Ссылка: Удалить статические ресурсы