I use the require hook of BabelJS (formerly named 6to5) to run node apps with es6features:
// run.js
require(\"babel/register\");
require(\"./app.js6\");
Add the babel-cli
and babel-preset-es2015
(aka ES6) dependencies to your app's package.json file and define a start
script:
{
"dependencies": {
"babel-cli": "^6.0.0",
"babel-preset-es2015": "^6.0.0"
},
"scripts": {
"start": "babel-node --presets es2015 app.js"
}
}
Then you can simply execute the following command to run your app:
npm start
If you ever decide to stop using Babel (e.g. once Node.js supports all ES6 features), you can just remove it from package.json:
{
"dependencies": {},
"scripts": {
"start": "node app.js"
}
}
One benefit of this is that the command to run your app remains the same, which helps if you are working with other developers.
Refer this:
https://stackoverflow.com/a/51485027/1549191
or this boilerplate:
Boilerplate: node-es6