如何通过 Laravel-Mix 安装 sweetalert2?

How Can I Install sweetalert2 via Laravel-Mix?

第 1 步:在 console/terminal.

npm install --save sweetalert2

第 2 步:在 app.scss 中添加此行...

@import '~sweetalert2/src/sweetalert2.scss';

第 3 步:在 app.js 中添加此行...

const swal = require('sweetalert2');

第 4 步:在 webpack.min.js...

mix.setPublicPath('public');
mix.js('resources/js/app.js', 'js');
mix.sass('resources/sass/app.scss', 'css');

第 5 步:npm run dev

第 6 步:将 app.js 和 app.css 添加到 HTML 文档

我收到这个错误:

Uncaught ReferenceError: swal is not defined

缺少什么步骤?

如果你想让它在任何地方都可用,你必须将它绑定到 window:

const swal = window.swal = require('sweetalert2');

但更好的方法是将它包含在您使用它的任何文件中,就像您在 app.js

中所做的一样

更新/resources/js/bootstrap.js.

try {
    window.Popper = require('popper.js').default;
    window.$ = window.jQuery = require('jquery');

    require('sweetalert2');
    require('bootstrap');
} catch (e) {}

尝试在 bootstrap.js 添加:

try {
    window.Popper = require('popper.js').default;
    window.$ = window.jQuery = require('jquery');

    const Swal = window.Swal = require('sweetalert2');

    require('bootstrap');

} catch (e) {}

在app.sass中添加

@import "~sweetalert2/src/sweetalert2";