Skip to main content
deleted 136 characters in body
Source Link
Kadiem Alqazzaz
  • 679
  • 1
  • 10
  • 31

So I used babel to be able to use ES6 imports and exports, and I have an issue with importingHere is my dotenvindex.js package.

index.js:

import {default as exp} from 'express';
import dotenv from 'dotenv'
dotenv.config();
import mongoose from "./WebScrapingProject/DBConnect";
 
const

If I ran the code above I get this error:

The express`uri` =parameter expto `openUri();
const PORT` =must 3000be ||a process.env.PORT;
express.listen(PORTstring, () =>got {console"undefined".log(`Server is working

But if I changed imports to ES5:

import ondotenv port:from 'dotenv'
${PORT}`dotenv.config()};
require("./WebScrapingProject/DBConnect");

it works but why? and here is the file whichhow can I connect to Mongo with:use ES6 imports in this case?

DBConnect.jsHere is the DBConnect file:

import mongoose{default as mongo} from "mongoose";

mongoosemongo.connect(process.env.DB_HOST, {useNewUrlParser: true}).then(() =>      {console.log('DB connected!')});
mongoosemongo.set('useFindAndModify', false);
export default mongoose

I get The uri parameter to openUri() must be a string, got "undefined". error

So I used babel to be able to use ES6 imports and exports, and I have an issue with importing dotenv package.

index.js

import {default as exp} from 'express';
import dotenv from 'dotenv'
dotenv.config();
import mongoose from "./WebScrapingProject/DBConnect";
 
const express = exp();
const PORT = 3000 || process.env.PORT;
express.listen(PORT, () => {console.log(`Server is working on port: 
${PORT}`)});

and here is the file which I connect to Mongo with:

DBConnect.js

import mongoose from "mongoose";

mongoose.connect(process.env.DB_HOST, {useNewUrlParser: true}).then(() =>      {console.log('DB connected!')});
mongoose.set('useFindAndModify', false);
export default mongoose

I get The uri parameter to openUri() must be a string, got "undefined". error

Here is my index.js:

import dotenv from 'dotenv'
dotenv.config();
import "./WebScrapingProject/DBConnect";

If I ran the code above I get this error:

The `uri` parameter to `openUri()` must be a string, got "undefined".

But if I changed imports to ES5:

import dotenv from 'dotenv'
dotenv.config();
require("./WebScrapingProject/DBConnect");

it works but why? and how can I use ES6 imports in this case?

Here is the DBConnect file:

import {default as mongo} from "mongoose";

mongo.connect(process.env.DB_HOST, {useNewUrlParser: true}).then(() => {console.log('DB connected!')});
mongo.set('useFindAndModify', false);
deleted 126 characters in body
Source Link
Kadiem Alqazzaz
  • 679
  • 1
  • 10
  • 31

So I used babel to be able to use ES6 imports and exports, and I have an issue with importing dotenv package.

index.js

import {default as exp} from 'express';
import dotenv from 'dotenv'
dotenv.config();
import mongoose from "./WebScrapingProject/DBConnect";

const express = exp();
const PORT = 3000 || process.env.PORT;
express.listen(PORT, () => {console.log(`Server is working on port: 
${PORT}`)});

and here is the file which I connect to Mongo with:

DBConnect.js

import mongoose from "mongoose";

mongoose.connect(process.env.DB_HOST, {useNewUrlParser: true}).then(() =>      {console.log('DB connected!')});
mongoose.set('useFindAndModify', false);
export default mongoose

I get The uri parameter to openUri() must be a string, got "undefined". error but if I add dotenv import inside DBConnect.js it works, so do I need to import everything in ES6 or there is another way?

So I used babel to be able to use ES6 imports and exports, and I have an issue with importing dotenv package.

index.js

import {default as exp} from 'express';
import dotenv from 'dotenv'
dotenv.config();
import mongoose from "./WebScrapingProject/DBConnect";

const express = exp();
const PORT = 3000 || process.env.PORT;
express.listen(PORT, () => {console.log(`Server is working on port: 
${PORT}`)});

and here is the file which I connect to Mongo with:

DBConnect.js

import mongoose from "mongoose";

mongoose.connect(process.env.DB_HOST, {useNewUrlParser: true}).then(() =>      {console.log('DB connected!')});
mongoose.set('useFindAndModify', false);
export default mongoose

I get The uri parameter to openUri() must be a string, got "undefined". error but if I add dotenv import inside DBConnect.js it works, so do I need to import everything in ES6 or there is another way?

So I used babel to be able to use ES6 imports and exports, and I have an issue with importing dotenv package.

index.js

import {default as exp} from 'express';
import dotenv from 'dotenv'
dotenv.config();
import mongoose from "./WebScrapingProject/DBConnect";

const express = exp();
const PORT = 3000 || process.env.PORT;
express.listen(PORT, () => {console.log(`Server is working on port: 
${PORT}`)});

and here is the file which I connect to Mongo with:

DBConnect.js

import mongoose from "mongoose";

mongoose.connect(process.env.DB_HOST, {useNewUrlParser: true}).then(() =>      {console.log('DB connected!')});
mongoose.set('useFindAndModify', false);
export default mongoose

I get The uri parameter to openUri() must be a string, got "undefined". error

Source Link
Kadiem Alqazzaz
  • 679
  • 1
  • 10
  • 31

Nodejs with ES6 import

So I used babel to be able to use ES6 imports and exports, and I have an issue with importing dotenv package.

index.js

import {default as exp} from 'express';
import dotenv from 'dotenv'
dotenv.config();
import mongoose from "./WebScrapingProject/DBConnect";

const express = exp();
const PORT = 3000 || process.env.PORT;
express.listen(PORT, () => {console.log(`Server is working on port: 
${PORT}`)});

and here is the file which I connect to Mongo with:

DBConnect.js

import mongoose from "mongoose";

mongoose.connect(process.env.DB_HOST, {useNewUrlParser: true}).then(() =>      {console.log('DB connected!')});
mongoose.set('useFindAndModify', false);
export default mongoose

I get The uri parameter to openUri() must be a string, got "undefined". error but if I add dotenv import inside DBConnect.js it works, so do I need to import everything in ES6 or there is another way?