Node -express app.get() помечен как неразрешенный в webstorm

Если вы следуете инструкциям JetBrains Getting Started with Node.js в WebStorm, то специальный код node -express будет подсвечен правильно. Однако, если вы создаете свой собственный простой проект node -express, например. используя node -express 'Guide, затем выразить определенные функции, такие как app.get(), подчеркнуты и отмечены следующим предупреждением:

Unresolved function or method get()

Это происходит, даже если вы включили следующие библиотеки под Settings\JavaScript\Libraries:

  • Node.js Globals
  • Node.js v0.10.31 Основные модули
  • express-DefinitelyTyped (который вам нужно скачать)

Как настроить WebStorm для решения node -express функций, таких как app.get()?

Ответ 1

Вместо экспресс-безусловно определенного типа, используйте экспресс-типы в вашем проекте:

npm install --save-dev @types/express

В качестве альтернативы для пользователей пряжи:

yarn add --dev @types/express

Ответ 2

Это отлично сработало для меня.

TL; DR: перейдите в " Settings/Preferences → " Languages and FrameworksJavaScriptLibraries, нажмите кнопку " Download справа, затем выберите "Экспресс" (или любую другую нужную вам библиотеку) и нажмите " Download and Install.

Ответ 3

Включение функции express-DefinitelyTyped typescript для проекта Express для меня работает - app.get() успешно разрешено. Добавление typescript stubs - единственное возможное обходное решение, поскольку WebStorm не может понять, как определяется выражение express - см. https://youtrack.jetbrains.com/issue/WEB-6667#comment=27-470393

Если добавление typescript заглушек не работает для вас, попробуйте сделать недействительными кеши. Если это не поможет, я бы посоветовал связаться со службой поддержки jetbrains, предоставив образец проекта