将Select2与Magento 2集成

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了将Select2与Magento 2集成相关的知识,希望对你有一定的参考价值。

我正在尝试将Select2与Magento2集成。到目前为止,我已经成功集成了插件,但是控制台上显示错误。enter image description here

我做了什么:

  1. 下载了select2.min.js并将其放入app/design/frontend/<vendor>/<themename>/web/js/select2.min.js
  2. [app/design/frontend/<vendor>/<themename>/Magento_Theme/layout/default_head_blocks.xml中包含脚本
  3. 将其添加到脚本标记中的phtml文件中:

    require(['jquery'],function(jquery){ jquery(document).load(function() { jquery("#sorter2").select2(); }); });

我知道我应该通过requireJS包含它,但是我似乎无法使其工作。

谢谢!

答案

您不应该将其添加到每个页面的标题中,因为不一定会加载依赖项。您需要在此处将其添加到主题requirejs-config中;

/app/design/frontend/<vendor>/<theme>/requirejs-config.js

在文件中放入这个;

var config = {
    paths: {
        'select2': 'js/select2.min',
    },
};

现在在任何phtml文件中,您都可以这样称呼;

<script type="text/javascript">
    require(['jquery','select2'],function($){
        // do stuff with select
    });
</script>
另一答案

类似这样的工作:

requirejs-config.js

var config = {
    paths: {
        'select2': 'SATA_SparePartsFinder/js/vendor/select2.full'
    }
};

在您的.phtml中:

<script type="text/javascript">
    require(['jquery', 'select2'], function($) {
        $('#model-select').select2({language: {
                noResults: function () {
                    return '<?= __('No results found') ?>';
                }
            }});
    });
</script>

以上是关于将Select2与Magento 2集成的主要内容,如果未能解决你的问题,请参考以下文章

如何将 GSA Smartpay 支付与 Magento 集成?

markdown [magento] - 代码片段

集成jstree和select2

Magento Third API集成

将 Select2 集成到 Angular2 应用程序中

以 Magento 为主,并创建单点登录以与其他第三方软件集成