【发布时间】:2018-01-14 10:41:57
【问题描述】:
不确定问题是否与 laravel-mix 有关,但我遇到了 Browsersync 包的问题。这是我的 mix.js:
mix.js('resources/assets/js/app.js', 'public/js')
.browserSync({proxy: 'localhost:8000'})
.sass('resources/assets/sass/app.scss', 'public/css');
当我运行 npm run watch-poll (watch 不接受更改,因此 watch-poll see here )我在控制台上收到以下错误:
[Browsersync] Watching files...
events.js:160
throw er; // Unhandled 'error' event
^
Error: watch resources/views/auth/passwords ENOSPC
at exports._errnoException (util.js:1020:11)
at FSWatcher.start (fs.js:1443:19)
at Object.fs.watch (fs.js:1470:11)
at createFsWatchInstance (/home/tanmay/LVProjects/learningdemo/node_modules/chokidar/lib/nodefs-handler.js:37:15)
at setFsWatchListener (/home/tanmay/LVProjects/learningdemo/node_modules/chokidar/lib/nodefs-handler.js:80:15)
at FSWatcher.NodeFsHandler._watchWithNodeFs (/home/tanmay/LVProjects/learningdemo/node_modules/chokidar/lib/nodefs-handler.js:228:14)
at FSWatcher.NodeFsHandler._handleDir (/home/tanmay/LVProjects/learningdemo/node_modules/chokidar/lib/nodefs-handler.js:407:19)
at FSWatcher.<anonymous> (/home/tanmay/LVProjects/learningdemo/node_modules/chokidar/lib/nodefs-handler.js:455:19)
at FSWatcher.<anonymous> (/home/tanmay/LVProjects/learningdemo/node_modules/chokidar/lib/nodefs-handler.js:460:16)
at FSReqWrap.oncomplete (fs.js:123:15)
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! @ watch: `cross-env 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 ERR! Exit status 1
npm ERR!
npm ERR! Failed at the @ watch script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /home/tanmay/.npm/_logs/2017-08-07T07_02_31_677Z-debug.log
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! @ watch-poll: `npm run watch -- --watch-poll`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the @ watch-poll script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /home/tanmay/.npm/_logs/2017-08-07T07_02_31_725Z-debug.log
我在:Ubuntu 16.04.3(不是虚拟机)。运行:Nodejs v6.11.2、NPM v5.3.0
当我从我的 mix.js 中注释掉 .browserSync() 调用时:
mix.js('resources/assets/js/app.js', 'public/js')
// .browserSync({proxy: 'localhost:8000'})
.sass('resources/assets/sass/app.scss', 'public/css');
但是,错误不再存在。我该如何解决这个问题?请随时询问任何其他必要的信息。
这是我的package.json 文件
更新:新的 laravel 项目不会出现此错误。为了获得与新项目相同的结果,这就是我所做的:
我删除了节点模块:rm -rf node_modules 我删除了 package-lock.json 文件:rm package-lock.json 我重新运行:npm install、npm run dev、npm run watch-poll
结果:还是一样的错误:(
【问题讨论】:
-
这里同样的错误;只是您在更新中说的一个快速问题“在新的 laravel 项目上不会发生此错误”,但是您以“结果:仍然相同的错误:(”结束语句!?您的意思是这些步骤中没有错误吗?新项目,但仍在您现有的项目中?谢谢
-
@retrovertigo 在新项目中没有错误“如果”我运行
sudo npm run watch而不是npm run watch。正如您可能猜到的那样,在这篇文章发布 4 个月后,我再次在一台新机器上遇到了这个问题。这个问题我真的很郁闷。 -
一个适合我的解决方案是切换到“watch-poll”而不是“watch”
-
我使用
laravel-mix和4.0.7版本。我只删除了node_modules,然后删除了npm install,一切正常。我看到了这个错误的很多变种,没有通用的解决方案。
标签: node.js laravel npm browser-sync laravel-mix