Laravel Mix 突然停止编译 SCSS 并写入空文件

Laravel Mix suddenly stopped compiling SCSS and writes empty files

就在几天前,无论是 js 到 js 还是 scss 到 css,我的 mix 中的所有内容都编译正确。与此同时,我没有更改 scss 文件中的任何内容,也没有更改任何有关混音或整体设置的内容。但是,我在 Laravel 项目的 resources/js 文件夹中移动了一些项目的 jsb 文件,并相应地调整了所有相应的包含。

现在,几天后,当我 运行 npm run dev,或 prodwatch 时,节点 returns 以下(文件改编的名字):

DONE  Compiled successfully in 224711ms

           Asset       Size               Chunks             Chunk Names
 /css/victor.css    0 bytes  /js/bob, /js/ceasar  [emitted]  /js/bob, /js/ceasar
 /css/wiliam.css    0 bytes  /js/bob, /js/ceasar  [emitted]  /js/bob, /js/ceasar
/css/xanthos.css    0 bytes  /js/bob, /js/ceasar  [emitted]  /js/bob, /js/ceasar
   /css/yale.css    0 bytes  /js/bob, /js/ceasar  [emitted]  /js/bob, /js/ceasar
    /css/zac.css    0 bytes  /js/bob, /js/ceasar  [emitted]  /js/bob, /js/ceasar
    /js/alice.js   1.81 MiB            /js/alice  [emitted]  /js/alice
      /js/bob.js   47.2 KiB              /js/bob  [emitted]  /js/bob
   /js/ceasar.js   2.72 MiB           /js/ceasar  [emitted]  /js/ceasar
            0.js   28.5 KiB                    0  [emitted]
            1.js    114 KiB                    1  [emitted]

事实上,这些文件实际上是空的。

我检查了 webpack.mix.js 以及主要的 scss 文件和它们包含的文件。 ——并没有发现什么特别可疑的东西。 我也试过重新安装所有 node_modules.

webpack.mix.js 看起来像这样:

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

 mix.js('resources/js/bob.js', 'public/js')
    .js('resources/js/ceasar.js', 'public/js')
    .js('resources/js/alice.js', 'public/js')
    .sass('resources/sass/kyle/wiliam.scss', 'public/css')
    .sass('resources/sass/kyle/xanthos.scss', 'public/css')
    .sass('resources/sass/victor.scss', 'public/css')
    .sass('resources/sass/yale.scss', 'public/css')
    .sass('resources/sass/zac.scss', 'public/css');

if (mix.inProduction()) {
    mix.version();
}

(仅此而已,以防万一有人问。)

我想让我的工作 scss 编译器备份并 运行ning。 这个问题从何而来?我是不是搞砸了什么?

当您在应用程序代码中异步加载 files/components 时,似乎存在一些常见的已知问题。

This clearly shows upstream issues further down in the open issue

现在您可以尝试删除动态导入,如果您将空的 .css 文件导入到 javascript 文件中,一些开发人员也可以使用它。

我在 Laravel Mix 的 Github 页面上的 issue 中找到了一些有用的指导。

想法是为 css 和 js 文件创建两个单独的节点任务。我已经在 Laravel 的全新安装上尝试过它(使用 Laravel Mix v4.0.7)并且它正在运行。