Magento 2 расширяет $.маг.Виджет быстрого поиска


Похоже, я не могу расширить виджет модуля быстрого поиска form-mini.js найдено в модуле/пути: ../vendor/magento/module-search/view/frontend/web/form-mini.js

Как я могу расширить свой пользовательский модуль $.mage.quickSearch виджета?

Уже опробован в Vendor_Module/js/search:

define([
    'jquery',
    'underscore',
    'mage/template',
    'matchMedia',
    'jquery/ui',
    'mage/translate',
    'mage/menu'
], function($){

    $.widget('custom.quickSearch', $.mage.quickSearch', {
        _init: function () {
            alert("I'm here");
        }
    });

    return $.custom.quickSearch;
});

В requirejs-config.js

var config = {
    "map": {
        "*": {
            "quickSearch": "Vendo_Module/js/search"
        }
    }
};

Ранее я успешно расширил виджет $.mage.menu, используя ту же технику, что и выше, но борясь с быстрым поиском, кто-нибудь знает? помощь оценена по достоинству!

Author: Siva, 2019-05-28

1 answers

Наилучшей практикой является использование способа mixins с полным путем js.

App/code/Vendor/Module/view/frontend/requirejs-config.js

var config = {
    config: {
        mixins: {
            'Magento_Search/form-mini': {
                'Vendor_Module/js/mixins/form-mini': true
            }

        }
    }
};

App/code/Vendor/Module/view/frontend/web/js/mixins/form-mini.js

define([
    'jquery',
    'underscore',
    'mage/template',
    'matchMedia',
    'jquery/ui',
    'mage/translate'
], function ($, _, mageTemplate, mediaCheck) {

    return function (widget) {
        $.widget('custom.quickSearch', widget, {
            _init: function () {
                alert("I'm here");
            }
        });
        return $.custom.quickSearch;
    };
});

enter image description here

 2
Author: Khoa TruongDinh, 2019-05-28 08:49:20