就在几天前,我的 mix 中的所有内容都正确编译,无论是 js 到 js 还是 scss 到 css。与此同时,我没有更改 scss 文件中的任何内容,也没有更改任何混合或整体设置。但是,我将项目的一些 jsb 文件移到了 Laravel 项目的 resources/js 文件夹中,并相应地调整了所有相应的包含内容。
现在,几天后,当我运行 npm run dev
或 prod
或 watch
时,节点返回以下内容(文件名已调整):
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 编译器备份并运行。 这个问题从何而来?我搞砸了什么吗?
最佳答案
当您在应用程序代码中异步加载文件/组件时,似乎存在一些常见的已知问题。
This clearly shows upstream issues further down in the open issue
现在,您可以尝试删除动态导入,如果您将空的 .css 文件导入到 JavaScript 文件中,一些开发人员也可以使用它。
关于javascript - Laravel Mix 突然停止编译 SCSS 并写入空文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57595314/