首页 > 解决方案 > 每次我对代码进行修改时,Laravel、css/app.css 都会在 mix-manifest.json 中消失

问题描述

每次我更改代码中的一行时,mix-manifest.json 中的 css/app.css 行都会被删除。

恢复该行的唯一方法是运行npm run watchor npm run dev,但是当我对代码进行新修改时,我遇到了同样的问题。

没关系时,这里是我的 mix-manifest.json :

{
"/js/app.js": "/js/app.js",
"/css/app.css": "/css/app.css",
"/css/subscriber.css": "/css/subscriber.css",
"/css/agent.css": "/css/agent.css",
"/css/guest.css": "/css/guest.css",
"/js/mobile.js": "/js/mobile.js",
"/js/vendor.js": "/js/vendor.js",
"/js/manifest.js": "/js/manifest.js",
"/css/dragula.min.css": "/css/dragula.min.css"
}

不正常时的 mix-manifest.json :

{
"/js/app.js": "/js/app.js",
"/js/mobile.js": "/js/mobile.js",
"/js/vendor.js": "/js/vendor.js",
"/js/manifest.js": "/js/manifest.js",
"/css/dragula.min.css": "/css/dragula.min.css"
}

我的 webpack.mix.js :

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

let ImageminPlugin = require('imagemin-webpack-plugin').default;

mix.webpackConfig({
    plugins: [
        new ImageminPlugin({
            disable: mix.inProduction() === false, // Disable during development
            test: /\.(jpe?g|png|gif|svg)$/i
        })
    ]
})
    .js('resources/assets/js/app.js', 'public/js').extract(['vue'])
    .sass('resources/assets/sass/app.scss', 'public/css')
    .sass('resources/assets/sass/subscriber.scss', 'public/css')
    .sass('resources/assets/sass/agent.scss', 'public/css')
    .sass('resources/assets/sass/guest.scss', 'public/css')
    .copy('node_modules/vue2-dragula/styles/dragula.min.css', 'public/css/dragula.min.css')
    .copyDirectory('resources/assets/img', 'public/img')
    .copyDirectory('resources/assets/fonts', 'public/fonts')
    // Mobile
    .js('resources/assets/js/mobile.js', 'public/js')

    //.disableNotifications();

if (mix.inProduction()) {
    mix.options({
      purifyCss : {
          purifyOptions: {
              whitelist: [
                  'is-invisible',
                  'is-clearfix',
                  'modal-card-foot',
                  'is-hovered',
                  'is-current',
                  '*columns*',
                  '*popover-*',
                  '*c-*',
                  '*ct-*',
                  '*-slide*',
                  '*taginput*',
                  'has-background-conciergerie',
                  '.is-hoverable tr:hover',
              ]
          }
      },
      uglify: {
          uglifyOptions: {
              compress: {
                  drop_console: true,
              }
          }
      }
    })
        .version();
}

你有什么主意吗?

谢谢!

标签: csslaravelnpmmodulemanifest

解决方案


今天当我同时运行多个“npm run watch”进程时,这发生在我身上。杀死其中一个解决了这个问题。


推荐阅读