Этот вопрос, кажется, есть повсюду на SO, но ответы, похоже, не касаются моей ситуации или не отвечают ей. Я только начинаю с nodejs и реагирую нативно, поэтому я установил nodejs и выполнил следующие команды, чтобы начать работу:
$ npm install expo-cli
$ npm update
$ npx expo init helloWorld
Я выбрал «минимальный» простой рабочий процесс, а затем начал с npx expo start
. npx не смог найти expo-cli, поэтому я переместил каталог node_modules в каталог helloWorld и снова начал с npx expo start
. На этот раз проект запускается нормально, но сразу же выдает ошибку о превышении числа наблюдателей, скорее всего, из-за большого количества файлов, которые он пытается просмотреть после добавления каталога node_modules:
internal/fs/watchers.js:186
throw error;
^
Error: ENOSPC: System limit for number of file watchers reached, watch '/home/drew/helloWorld/node_modules/css-tree'
at FSWatcher.<computed> (internal/fs/watchers.js:178:26)
at Object.watch (fs.js:1445:34)
at NodeWatcher.watchdir (/home/drew/helloWorld/node_modules/sane/src/node_watcher.js:159:22)
at Walker.<anonymous> (/home/drew/helloWorld/node_modules/sane/src/common.js:109:31)
at Walker.emit (events.js:315:20)
at /home/drew/helloWorld/node_modules/walker/lib/walker.js:69:16
at FSReqCallback.oncomplete (fs.js:163:23) {
errno: -28,
syscall: 'watch',
code: 'ENOSPC',
path: '/home/drew/helloWorld/node_modules/css-tree',
filename: '/home/drew/helloWorld/node_modules/css-tree'
}
Все верхние ответы, которые я нашел здесь, в поисках решений, связанных со сторожем, но у меня нет этого установленного и реагирующего, похоже, вместо этого используется fs.watch. один важный вопрос, который я нашел , предполагает, что нет способа добавить список игнорирования, как в стороже:
Не похоже, что это возможно. Просто взгляните на путь в слушателе и ничего не делайте, если он начинается с 'node_modules'.
Это не может быть таким большим падением производительности, если вы не обновляете модули постоянно во время работы node , что было бы немного странно.
Разве я не должен так настраивать среду разработки? Я хочу максимально изолировать проекты (исходящий из python, где virtualenv очень важен), но похоже, что это создает больше проблем, чем я ожидал. Как я могу это исправить, не прибегая к установке всего глобального?