Использование узла express с версией узла 10 и выше не удается - PullRequest
0 голосов
/ 29 апреля 2020

Я вижу много сообщений по этой проблеме, но никто не отвечает на простой вопрос. Я хочу набрать

express myNewProject

на работающем узле системы V12.16.2

Все ответы попадают в ПОЧЕМУ не удается, например, "fs.writeFile ( ...) требуется третий (или четвертый) параметр "

Действительно ли я вынужден больше не использовать express? Есть ли какое-то исправление, которое я могу применить к своей системе и заставить эту работу?

вот сеанс:

bcuser@autumn14: ~ $ express myNewProject

create: myNewProject

установить зависимости: $ cd myNewProject && npm установить

запустить приложение: $ DEBUG = myNewProject ./bin/www*1020*

fs. js: 144 бросить новый ERR_INVALID_CALLBACK (cb); ^

TypeError [ERR_INVALID_CALLBACK]: обратный вызов должен быть функцией. Получено {mode: 438} в MaybeCallback (фс. js: 144: 9) в Object.writeFile (фс. js: 1252: 14) при записи (/ usr / lib / node_modules / express -generator / bin / express: 246: 6) в / usr / lib / node_modules / express -генератор / bin / express: 210: 5 в / usr / lib / node_modules / express -генератор / bin / express: 261: 11 в /usr/lib/node_modules/express-generator/node_modules/mkdirp/index.js:29:20 в FSReqCallback.oncomplete (фс. js: 155: 23) {code : 'ERR_INVALID_CALLBACK'}

1 Ответ

0 голосов
/ 29 апреля 2020

Эта ошибка выглядит так, как будто вам нужно обновить либо генератор express, либо express до последней версии. Вы используете Express 4.9.0, а последняя версия 4.17.1. Стек ошибок выглядит так, как будто он относится к express -генератору, но, возможно, это версия Express, встроенная в установку express -генератора. В любом случае, я думаю, вам нужна более новая версия.

Что касается фона, начиная с node.js v10, узел начал требовать асинхронные обратные вызовы для ряда асинхронных функций, таких как fs.write() и fs.unlink(). Таким образом, любой код, который вроде запускал и забывал вызов этих функций, не обращая внимания на завершение или ошибку (не предоставляя функцию обратного вызова), генерировал бы эту ERR_INVALID_CALLBACK ошибку.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...