【问题标题】:Laravel-mix - BrowserSync throwing an error at event.js:160Laravel-mix - BrowserSync 在 event.js:160 抛出错误
【发布时间】: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-pollwatch 不接受更改,因此 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 installnpm run devnpm run watch-poll

结果:还是一样的错误:(

【问题讨论】:

  • 这里同样的错误;只是您在更新中说的一个快速问题“在新的 laravel 项目上不会发生此错误”,但是您以“结果:仍然相同的错误:(”结束语句!?您的意思是这些步骤中没有错误吗?新项目,但仍在您现有的项目中?谢谢
  • @retrovertigo 在新项目中没有错误“如果”我运行sudo npm run watch 而不是npm run watch。正如您可能猜到的那样,在这篇文章发布 4 个月后,我再次在一台新机器上遇到了这个问题。这个问题我真的很郁闷。
  • 一个适合我的解决方案是切换到“watch-poll”而不是“watch”
  • 我使用laravel-mix4.0.7 版本。我只删除了node_modules,然后删除了npm install,一切正常。我看到了这个错误的很多变种,没有通用的解决方案。

标签: node.js laravel npm browser-sync laravel-mix


【解决方案1】:

这可能是由于另一个任务已经在端口 4040 上运行。

你可以试试killall -9 node

来源/更多详情:https://github.com/parse-community/parse-dashboard/issues/401#issuecomment-224007436

【讨论】:

  • node: no process found
【解决方案2】:

我怀疑与Gulp Error: watch ENOSPC 的工作解决方案显示的问题相同

试试这个:为什么会出现这个问题?数量有限制 可以在系统中观看的文件。我们必须增加这个 数字。下面的命令可以用来增加这个数字。

$ echo fs.inotify.max_user_watches=582222 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p

【讨论】:

    猜你喜欢
    • 2022-01-11
    • 1970-01-01
    • 2019-12-24
    • 1970-01-01
    • 2019-08-28
    • 1970-01-01
    • 2018-09-16
    • 2016-12-14
    • 2017-05-06
    相关资源
    最近更新 更多