В первом примере вы определяете var MONGO_URI
, а затем используете process.env.MONGO_URI
; это неверно, потому что вы должны использовать переменную, которую вы уже определили MONGO_URI
, непосредственно внутри метода connect
или использовать переменную из файла .env в каталоге root вашего проекта. Вы можете использовать один из следующих сценариев ios:
1) Локальная переменная Case: Добавьте var или const, как вы делали ранее, а затем присоедините его к методу connect mon goose:
const mongoose = require('mongoose');
var MONGO_URI='mongodb+srv://myUsername:myPassword@cluster0-7impo.mongodb.net/test?retryWrites=true&w=majority'
mongoose.connect(MONGO_URI, { useNewUrlParser: true, useUnifiedTopology: true });
2) Использование .env
File Case: Добавить строку подключения в качестве переменной в файле .env
в каталоге root вашего проекта:
создайте файл .env
, и он должен содержать следующее:
MONGO_URI = 'mongodb+srv://myUsername:myPassword@cluster0-7impo.mongodb.net/test?retryWrites=true&w=majority'
Затем вы можете включить эту переменную в метод подключения, но сначала вам нужно установить dotenv
* 1042. * Пакет с помощью одной из следующих команд:
С npm: npm установить dotenv
С пряжей: пряжа добавить dotenv
Затем включите пакет dotenv в ваш основной файл проекта: require('dotenv').config();
Последний шаг - добавление переменной из файла .env в ваш метод connect, и конечный результат должен выглядеть следующим образом:
require('dotenv').config();
const mongoose = require('mongoose');
mongoose.connect(process.env.MONGO_URI, { useNewUrlParser: true, useUnifiedTopology: true });