Homestead 下使用 npm run watch-poll 报错。参考别人的同时又结合自己的问题总结
解决流程如下:
- 我的是环境是 windows 下的 homestead.
- laravel 版本是 8.83.2
- npm 版本是 6.14.13
- node 版本是 v14.17.2
- Laravel Mix v6.0.43
- 参考别人的解决方法 原配置如下:
"scripts":{ "dev": "npm run development", "development": "NODE_ENV=development node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js", "watch": "NODE_ENV=development node_modules/webpack/bin/webpack.js --watch --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js", "watch-poll": "npm run watch -- --watch-poll", "hot": "NODE_ENV=development node_modules/webpack-dev-server/bin/webpack-dev-server.js --inline --hot --config=node_modules/laravel-mix/setup/webpack.config.js", "prod": "npm run production", "production": "NODE_ENV=production node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js" },
npm run watch-poll
命令执行后依然出错,就很纳闷。然后就仔细看了看报错信息。- 有个报错信息如下:
Unknow option '--hide-modules'
- 我发现这个配置信息是在
package.json
文件下。就先清理了文件中的--hide-modules
。 - 然后执行
npm run watch-poll
命令又报错。Unknow option '--watch-poll'
- 发下配置里面多了两条横线
"watch-poll": "npm run watch -- --watch-poll"
,去掉多余的两条横线后,重新执行以下命令就可以了。
或者npm run watch-poll
npm run watch --watch-poll
- 最终的
package.json
文件中scripts的配置如下:"scripts":{ "dev": "npm run development", "development": "NODE_ENV=development node_modules/webpack/bin/webpack.js --progress --config=node_modules/laravel-mix/setup/webpack.config.js", "watch": "NODE_ENV=development node_modules/webpack/bin/webpack.js --watch --progress --config=node_modules/laravel-mix/setup/webpack.config.js", "watch-poll": "npm run watch --watch-poll", "hot": "NODE_ENV=development node_modules/webpack-dev-server/bin/webpack-dev-server.js --inline --hot --config=node_modules/laravel-mix/setup/webpack.config.js", "prod": "npm run production", "production": "NODE_ENV=production node_modules/webpack/bin/webpack.js --progress --config=node_modules/laravel-mix/setup/webpack.config.js" },