简体   繁体   中英

Using variables and functions in other fileis Node js

I have two separate files and I want to use functions and variables in my first file in another file. What I mean is, here is the content of my first file:

const db = mongoose.connection;

and in my second file I need to for example log it:

console.log(db)

I used export and import but it did not work:

export const db = mongoose.connection;

import db from (./db.js)
console.log(db)

I got this error: SyntaxError: Cannot use import statement outside a module

in node.js (or modern another js platforms) you can use modules.

in node.js. you have 2 choice.

1: common js (CJS) modules:

in a way, nodeJS based on CJS. and CJS‌ modules builtin available in node.

you can imort a CJS‌ module with this code :

const module = required("module file widout .js");

and for create modules (in your module file):

module.export = {your code};

2 ES6 modules:

es6 is a newer version of JS and that supports modules defaultly.

use module:

your example:) (in question post):

from module import a;
console.log(a); //1    

create module:

export a = 1

very important for ES6 modules: you should be use a js compiler, like babel to compile es6-21 to es5 nodeJS and browsers (i dont know other platforms) does not support es6 or above JS versions.

Did you create the HTML file, too? If so try loading the second file in as a module type to fix the error.

Put this in your HTML file:

<script type="module" src="secondScript.js"></script>

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM