Laravel npm run watch 不能在运行时 scss 和 js 中编译
Posted
技术标签:
【中文标题】Laravel npm run watch 不能在运行时 scss 和 js 中编译【英文标题】:Laravel npm run watch not compile in runtime scss and js 【发布时间】:2020-11-03 12:11:49 【问题描述】:您好,我对新的 laravel 项目有疑问。我知道它应该是在命令 npm run watch 之后自动编译 scss 和 js。但它没有识别出任何变化,我不知道为什么。
我的 webpack.mix.js 看起来像这样:
const 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/js/app.js', 'public/js')
.sass('resources/sass/app.scss', 'public/css');
为了编译更改,我必须在每次 npm run watch 时进行。如果你知道为什么,请告诉我。
Log from console:
DONE Compiled successfully in 8794ms 7:57:59 AM
Asset Size Chunks Chunk Names
/css/app.css 179 KiB /js/app [emitted] /js/app
/js/app.js 1.66 MiB /js/app [emitted] /js/app
但这在运行时从未改变......
【问题讨论】:
【参考方案1】:第一次运行
npm run dev
然后运行
npm run watch
【讨论】:
相同的行为:/ 检查节点是否正确安装【参考方案2】:哦,我在宅基地服务器上运行 npm run watch...当我在本地环境中尝试它时,它工作正常。这是解决方案
【讨论】:
【参考方案3】:试试npm run watch-poll
。监视命令并不总是有效。所以watch-poll
每隔几毫秒手动检查一次文件更改。
【讨论】:
【参考方案4】:我尝试了以下步骤来清理公用文件夹,它为我解决了这个问题。
从公用文件夹中删除以下文件:
mix-manifest.json js文件夹内的所有文件 任何以数字命名的文件,例如:123.js然后运行以下命令:
npm 运行开发 npm 运行观察【讨论】:
【参考方案5】:就我而言,npm upgrade
解决了这个问题。
【讨论】:
以上是关于Laravel npm run watch 不能在运行时 scss 和 js 中编译的主要内容,如果未能解决你的问题,请参考以下文章
npm run watch 和 npm run watch-poll 的区别
node npm run watch退出状态3221225725
为啥我不能在 Laravel 7 中成功运行 npm run dev?