Vinodea Richard
Vinodea Richard

Reputation: 27

Nodejs Express simple import js file router

how to import the user.json json file into my user.js ? when i type / user the json should be displayed? new version of node I don't understand

index.js

import express from 'express';
import bodyParser from 'body-parser';
import usersRoutes from './routes/users.js';

const app = express();
const PORT = 5000;

app.use(bodyParser.json());

app.use('/users', usersRoutes);

app.get('/', (req, res) => {
    res.send('hello');
});

app.listen(PORT, () => console.log(`Server running on port: http://localhost:${PORT}`));

user.js

import express from 'express';
const router = express.Router();


router.get('/', (res, req) => {
    res.send();
});

export default router;

enter image description here

Upvotes: 0

Views: 2601

Answers (4)

user14520680
user14520680

Reputation:

Instead use the fs module:

const user = require('fs').readFileSync('../user.json', 'utf-8');

Upvotes: 1

Or Assayag
Or Assayag

Reputation: 6356

You can do it by simply:

import express from 'express';
import user from '../user'; // <---- Don't need even the .json extension.
const router = express.Router();


router.get('/', (res, req) => {
    res.send(user);
});

export default router;

Upvotes: 0

Someone Special
Someone Special

Reputation: 13598

Depending of the version you are using you either has to use babel or include the --experimental-json-modules flag for the module to work. ** node v.14 does not need anything.

node --experimental-json-modules about.js

import express from 'express';
import userfile from '../user.json' // import the json file
const router = express.Router();


router.get('/', (res, req) => {
    res.send(userfile);  //this line sends the json
});

export default router;

Upvotes: 1

iwaduarte
iwaduarte

Reputation: 1698

import express from 'express';
import userJSON from '../user.json' // < ------- here
const router = express.Router();


router.get('/', (res, req) => {
    res.send();
});

export default router;

Upvotes: 1

Related Questions