【问题标题】:SweetAlert in Laravel 5.5 using laravel-mix not work properly with cssLaravel 5.5 中的 SweetAlert 使用 laravel-mix 不能与 css 一起正常工作
【发布时间】:2017-12-03 08:26:19
【问题描述】:

我尝试在 Larvel Mix 中使用 SweetAlert 和 Laravel 5.5,但无法正常工作

webpack.mix.js

mix.js('resources/assets/js/app.js', 'public/js')
   .sass('resources/assets/sass/app.scss', 'public/css')
   .copy('node_modules/sweetalert/dist', 'public/js');

package.json

 "devDependencies": {
        ...
        "bootstrap-sass": "^3.3.7",
        ...
        "jquery": "^3.2",
        "laravel-mix": "^1.0",
        "sweetalert": "^2.0.8",

资源/资产/sass/app.css

// Sweet Alert
@import url("https://cdnjs.cloudflare.com/ajax/libs/sweetalert/1.1.3/sweetalert.css");

当我执行npm run dev 编译时没有任何错误。

但是当我使用这种方法时,警报显示没有 SweetAlert 的 CSS 样式。

【问题讨论】:

    标签: laravel-5 laravel-mix sweetalert2


    【解决方案1】:

    之后

    npm install sweetalert2 --save
    

    您应该在 app.js 中执行以下操作:

    window.Swal = require('sweetalert2');
    

    或者

    @import "~sweetalert2";
    

    【讨论】:

      【解决方案2】:

      在您的resources/assets/sass/app.scss 文件中,

      改用这一行

      @import "~sweetalert2";
      

      您所做的(从 CDN 导入 CSS)与 npm 完全无关。

      【讨论】:

      • Thankyou ,但这个问题已经很老了。现在我运行 Laravel 5.7,但谢谢。 @ru-chem-chong
      • 我不明白 Laravel 5.5 和 Laravel 5.7 是如何导致其工作方式不同的。
      【解决方案3】:

      第 1 步:npm install sweetalert --save 在终端/cmd 中运行此命令。

      第 2 步:在您的 resources/js/app.js 文件中,只需将其导入您的应用程序 import swal from 'sweetalert';

      【讨论】:

      • 这似乎对我有用,但它没有。它总是说“Swal 未定义”。但是,如果我改为输入“window.Swal = require('sweetalert2')”,它将起作用。我错过了什么?
      • 从 'sweetalert' 导入 swal; window.swal = swal 现在,试试这个方法
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-04-05
      • 2021-08-18
      • 1970-01-01
      • 2018-08-03
      • 2015-04-23
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多