Laravel 使用 select2 插件并在 laravel 中更改 app.js

Laravel using select2 plagin and change app.js in laravel

我有一个问题。我使用 Laravel 5.8 构建了一个项目,它依赖于 select2 插件。我做对了一切。但是编译项目后

npm run dev

我有以下异常:

Uncaught TypeError: $(...).select2 is not a function

我知道必须做什么。 jQuery 在此项目中连接了两次。起初在我的 .blade.php:

{{asset('adminlte/bower_components/jquery/dist/jquery.min.js')}}

编译后第二次 (npm run dev),Laravel 本身在 public/js/app.js

中执行
  window.$ = window.jQuery = 
  __webpack_require__(/*! jquery */ "./node_modules/jquery/dist/jquery.js");

如果我删除这段代码,我就不会发现问题,并且 select2 可以正常工作。 这是来自 public/js/app.js

的编译代码

它说:可以修改代码以满足您的应用程序的特定需求。

有谁知道如何在编译后隐藏这一行?

或者我应该在每次编译后删除这段代码吗?

您必须将其从位于 resources/assets/js/bootstrap.js 的源文件中删除并使用 npm run dev 重新编译。

或者您可以只在该文件中导入 select2,以便用户下载更少的文件。

您不应该修改 public/ 中的编译文件,因为编译后更改将消失。