【问题标题】:How to avoid Laravel Mix overriding app.css如何避免 Laravel Mix 覆盖 app.css
【发布时间】:2020-05-18 14:34:36
【问题描述】:

style.css 的内容在我运行 npm run dev 时被覆盖 这是我的 webpack 文件

let mix = require('laravel-mix');

/*
 |--------------------------------------------------------------------------
 | Mix Asset Management
 |--------------------------------------------------------------------------
 |
 | Mix provides a clean, fluent API for defining some Webpack build steps
 | for your Laravel application. By default, we are compiling the Sass
 | file for the application as well as bundling up all the JS files.
 |
 */

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

 mix.styles(['resources/assets/style.css'], 'public/css/app.css');

有什么方法可以附加 css 而不是覆盖它?

【问题讨论】:

    标签: css laravel webpack sass laravel-mix


    【解决方案1】:

    app 是 webpack 采用的默认名称

    所以要么改变 .sass('resources/assets/sass/app.scss', 'public/css') -> .sass('resources/assets/sass/app.scss', 'public/css/newfile.css')

    mix.styles(['resources/assets/style.css'], 'public/css/app.css') -> mix.styles(['resources/assets/style.css'], 'public/css/styles.css')

    编辑:如果您需要一个文件中的所有内容

    mix.sass('resources/assets/sass/app.scss', 'public/css/app.css')
    mix.styles(['public/css/app.css', 'resources/assets/style.css'], 'public/css/app.css')
    

    希望对你有帮助

    【讨论】:

      【解决方案2】:

      您不需要更改您的 webpack 文件。

      除了导入.sass.scss 文件外,Sass 还可以导入普通的旧.css 文件。唯一的规则是导入不能显式包含 .css 扩展,因为它用于指示纯 CSS @import

      Webpack

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

      Sass (resources/assets/sass/app.scss)

      ...
      
      @import '../style.css';
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2021-11-10
        • 2015-05-15
        • 1970-01-01
        • 2013-06-02
        • 2022-01-22
        • 2020-05-11
        • 2018-08-29
        • 2017-08-08
        相关资源
        最近更新 更多