Respuestas:
Sí, CoffeeScript simplemente se compila en JS puro, lo que lo hace completamente compatible con node.js.
Para ejecutar CoffeeScripts en el nodo, puede:
coffee -c example.coffee
para compilar, seguido de node example.js
para ejecutar el JS compilado.coffee example.coffee
require
descomprimir archivos coffeescript siempre que lo haga de require('coffee-script')
antemano.
coffee example.coffee
principalmente para el desarrollo? ¿O es lo suficientemente estable como para hacerlo en producción?
sudo npm install -g coffee-script
No solo puede ejecutar archivos CoffeeScript directamente en Node con
coffee source.coffee
También puede solicitarlos como si fueran archivos JavaScript. Por ejemplo, si tiene lib.coffee
en un directorio, puede escribir
require './lib'
desde otro archivo CoffeeScript en el mismo directorio. (Para hacer esto desde un archivo JavaScript, deberá agregarlo require 'coffee-script'
en la parte superior). Por lo tanto, nunca tendrá que hacer una compilación explícitamente en Node, a menos que esté empacando su proyecto para su implementación con una herramienta como npm.
Una advertencia: en los seguimientos de pila, los números de línea que verá se refieren al JavaScript compilado, incluso cuando está ejecutando CoffeeScript directamente (por lo que no tiene acceso al JavaScript). Mucha gente está tratando de arreglar esto, pero es un gran desafío.
Sí, aquí hay una respuesta diferente y más simple. Necesitas hacer 2 pasos.
npm install coffee-script --save # I assume you would have done this already
.
Tienen require('coffee-script')
como primera línea que se ejecutan en el server.js
de app.js
. ( ACTUALIZACIÓN: desde coffee script 1.7, tendrás que hacerrequire('coffee-script/register'))
Esto registra el compilador coffeescript en su aplicación y ahora puede comenzar a tratar archivos de café y archivos js por igual (lo que significa que también puede necesitar archivos de café).
Este método requerirá que escriba solo un archivo (app.js) en JavaScript de vainilla. Pero la ventaja es que su entorno de implementación no necesita tener coffeescript como una dependencia inicial instalada globalmente para ejecutar su aplicación. En este caso, solo tendría que copiar su código e npm install
instalar todos los paquetes necesarios. Y npm start
te tendría en funcionamiento
Tutoriales en vídeo
He visto una gran serie de tutoriales de Pedro Teixeira . Ha estado construyendo una serie completa de tutoriales de nodos. Incluye referencia a nodemon para la detección automática y la compilación y recarga de archivos editados .coffee.
Puede usar Jitter , una compilación continua simple para CoffeeScript.
npm install -g jitter
Supongamos que tiene un montón de archivos * .coffee en el directorio coffee y desea compilarlos en el directorio js. Entonces corre:
jitter coffee js
Jitter se ejecuta en segundo plano hasta que lo termina (Ctrl + C), buscando nuevos cambios.
Prueba esto
#!/usr/bin/env coffee
v = 78
console.log "The value of v is '#{v}'"
Entonces hazlo:
chmod +x demo.coffee
./demo.coffee
CoffeeScript tiene una integración bastante sólida con el nodo. Una vez que el módulo de 'coffeescript' se carga, ya sea require('coffee-script')
, por el ella-bang que demo'd anteriormente, o ejecutando coffee demo.coffee
... una vez cargado, puede utilizado require('./foo')
para traerfoo.coffee
Si desea compilar automáticamente todos sus archivos coffeescript (en un directorio, incluido subdirectorio) cada vez que cambian a javascript, simplemente use este comando:
find . -name '*.coffee' -type f -print0 | xargs -0 coffee -wc
coffee -o lib/ -cw src/