#javascript #node.js #express #passport.js
#javascript #node.js #выразить #passport.js
Вопрос:
В настоящее время я работаю над Express.js приложение, и я использую Passport.js (и, в частности, passport-local) для аутентификации в том, что будет панелью администрирования.
На данный момент программа действительно работает. У меня есть мой app.js это инициализирует passport и устанавливает соответствующие сеансы и т.д. У меня также есть мои маршруты, идущие в отдельный файл в моей папке routes из app.js файл.
Я не уверен, является ли это ошибкой с IntelliJ Idea от Jetbrain / WebStorm или я следую неправильным методам кодирования, но я получаю ошибку «Неразрешенная переменная user» в моей IDE, когда я вызываю «req.user» в моем index.js файл.
https://i.imgur.com/zgw3xUj.png (Не удается опубликовать изображения из-за репутации)
В моем файле index.ejs я также получаю аналогичную ошибку в моей IDE.
https://i.imgur.com/5bt7xf9.png
Несмотря на то, что эти 2 проблемы отображаются, переменная «запрос.user» по-прежнему состоит из данных, и я могу успешно проверить, существует ли «user» в моем ejs-файле, и вывести соответствующую информацию (при входе в систему.)
В моем app.js файл, я могу вызвать переменную «req.user» без того, чтобы IDE показывала какую-либо ошибку неизвестной переменной (https://i.imgur.com/80rzZmh.png , строка 48), поэтому я полагаю, что я, вероятно, неправильно настроил свои маршруты.
Любая помощь приветствуется. Спасибо.
Комментарии:
1. Привет! Добро пожаловать в StackOverflow! Нет необходимости вставлять изображения кода, просто вставьте свой код непосредственно сюда, будет намного легче читать и / или копировать ваш код, и люди будут более охотно помогать.
2. Спасибо и да, извините за это. Единственная проблема с публикацией кода заключается в том, что вы не увидите ошибку, которую выдает IDE (поскольку, похоже, это проблема с IntelliJ или что-то в этом роде.)
3. Это правда, тогда это можно оставить как изображение 🙂
Ответ №1:
IDE, такая как webstorm / IntelliJ / textmate / sublime, пытается помочь вам с информацией, которую вы ей предоставили. Поскольку вы используете passport, req.user
может быть заполнен, но IntelliJ не знает, что это так. Вы можете помочь своей IDE, предоставив дополнительные типы, такие как @typings / passport.
Комментарии:
1. Я уже добавил passport и passport-local к наборам. Это довольно странно, но, я думаю, это не имеет большого значения. Возможно, на сайте поддержки IntelliJs было бы лучше задать эти вопросы. В любом случае, спасибо.