【问题标题】:Laravel, css/app.css disappear in mix-manifest.json every time i do a modification in the code每次我对代码进行修改时,Laravel、css/app.css 都会在 mix-manifest.json 中消失
【发布时间】:2021-08-14 03:13:29
【问题描述】:

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

恢复该行的唯一方法是运行npm run watchnpm 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();
}

你有什么想法吗?

谢谢!

【问题讨论】:

  • 你能分享你的 webpack.mix.js 吗?
  • 我在我的帖子@FouedMOUSSI 中添加了它
  • 您是否尝试自定义编译后的 css 的文件名,例如 //... .sass('resources/assets/sass/app.scss', 'public/css/app.css') .sass('resources/assets/sass/subscriber.scss', 'public/css/subscriber.css').sass('resources/assets/sass/agent.scss', 'public/css/agent.css') .sass('resources/assets/sass/guest.scss', 'public/css/guest.css') //...
  • 我试过你的建议,问题已经在这里@FouedMOUSSI
  • 您是否尝试在删除.copy('node_modules/vue2-dragula/styles/dragula.min.css'... 行的情况下运行它?

标签: css laravel npm module manifest


【解决方案1】:

这听起来像是您的编辑器的问题。我强烈建议禁用所有插件,然后一次重新添加一个以找到有问题的插件。此外,如果您想确认这个理论,您可以尝试使用任何其他编辑器来编辑和保存文件。

【讨论】:

  • 什么样的“编辑器问题”可能会导致生成的 JSON 文件出现问题?这个“答案”没有提供任何解释,也没有提供任何解决方案,但显然值得来自 OP 的支持、接受和赏金?
【解决方案2】:

今天我同时运行多个“npm run watch”进程时发生了这种情况。杀死其中一个解决了问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-05-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多