Uso el enlace require de BabelJS (anteriormente llamado 6to5) para ejecutar aplicaciones de nodo con es6features :
// run.js require("babel/register"); require("./app.js6"); Llamo al node run.js para ejecutar mi app.js6 . Necesito instalar BabelJS y proporcionar un run.js para cada proyecto que me gustaría usar es6features. Preferiría una llamada como nodejs6 app.js6 . ¿Cómo puedo lograr este sistema de forma independiente (Unix y Windows)?
Agregue las dependencias babel-cli y babel-preset-es2015 (también conocido como ES6) al archivo package.json de su aplicación y defina un script de start :
{ "dependencies": { "babel-cli": "^6.0.0", "babel-preset-es2015": "^6.0.0" }, "scripts": { "start": "babel-node --presets es2015 app.js" } }Luego, simplemente puede ejecutar el siguiente comando para ejecutar su aplicación:
npm startSi alguna vez decide dejar de usar Babel (por ejemplo, una vez que Node.js admita todas las funciones de ES6), puede eliminarlo de package.json:
{ "dependencies": {}, "scripts": { "start": "node app.js" } }Un beneficio de esto es que el comando para ejecutar su aplicación sigue siendo el mismo, lo que ayuda si está trabajando con otros desarrolladores.
Cómo configurar la aplicación node.js con compatibilidad con es6 y recarga del servidor al cambiar el archivo .
1. Vaya a la terminal al directorio principal de su proyecto
npm init //crear paquete.json para proyecto
2.Instalar dependencias
npm install --save-dev babel npm install --save-dev babel-cli npm install --save-dev babel-preset-es2015 npm install --save-dev babel-preset-stage-0 //*1 npm install --save-dev nodemon1 - también puede ser la etapa 1 o 2, depende de las características de es que queramos usar
3. Deberíamos tener en el archivo package.json algo así (seguro que la versión del paquete será diferente, pero está bien):
"devDependencies": { "babel": "^6.5.2", "babel-cli": "^6.16.0", "babel-preset-es2015": "^6.16.0", "babel-preset-stage-0": "^6.16.0", "nodemon": "^1.11.0" }4. Cree el archivo .babelrc en el directorio raíz del proyecto (hay un archivo package.json)
{ "presets": ["es2015", "stage-0"] }5.Crea dos directorios:
src : aquí está el directorio de trabajo con archivos escritos en es6
dist - aquí los archivos se compilarán a es5 usando babel
El directorio raíz de su proyecto debería verse así:
7. Agregue los comandos necesarios a package.json :
"scripts": { "watch": "babel -w src/ -d dist/", "build": "babel src/ -d dist/", "serve": "babel -w src/ -d dist/ | nodemon --watch dist", "test": "echo \"Error: no test specified\" && exit 1" }8. Comandos disponibles:
npm run watch //inicia los cambios de watch watch en el directorio src y compila en dist
npm run build // compila archivos desde el directorio src a dist
npm run serve // está haciendo ver + iniciar servidor de nodo, en cada cambio de archivo reiniciará el servidor de nodo usando nodemon que está viendo cambios en el directorio dist
9. Notas finales
10. Ejecute el servidor y comience a crear la aplicación en el directorio src .
npm run serveSi son demasiados puntos para usted, entonces el modelo de trabajo completo está disponible en github: https://github.com/maciejsikora/node-express-babel-boilerplate .
Puede usar el nodo con el indicador --harmony para ejecutar el script con las características de es6