将Select2与Magento 2集成

Ian*_*Ian 5 requirejs magento2 select2

我正在尝试将Select2与Magento2集成。到目前为止,我已经成功集成了插件,但是控制台上显示错误。 在此处输入图片说明

我所做的:

  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包含它,但是我似乎无法使其工作。

谢谢!

Pix*_*dia 6

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

/app/design/frontend/<vendor>/<theme>/requirejs-config.js
Run Code Online (Sandbox Code Playgroud)

在文件中放这个;

var config = {
    paths: {
        'select2': 'js/select2.min',
    },
};
Run Code Online (Sandbox Code Playgroud)

现在在任何 phtml 文件中,您都可以这样调用它;

<script type="text/javascript">
    require(['jquery','select2'],function($){
        // do stuff with select
    });
</script>
Run Code Online (Sandbox Code Playgroud)

  • 有效!我也没有根据 Legends 评论放置 shim 配置部分。感谢所有的帮助。 (2认同)