Respostas:
Sim, o CoffeeScript simplesmente compila em JS puro, tornando-o completamente compatível com o node.js.
Para executar o CoffeeScripts no nó, você pode:
coffee -c example.coffee
para compilar, seguido por node example.js
para executar o JS compilado.coffee example.coffee
require
descompilar arquivos de café com café, desde que require('coffee-script')
previamente.
coffee example.coffee
principalmente para desenvolvimento? Ou é estável o suficiente para produzir na produção?
sudo npm install -g coffee-script
Não apenas você pode executar arquivos CoffeeScript diretamente no Node com
coffee source.coffee
você também pode solicitá-los como se fossem arquivos JavaScript. Por exemplo, se você tiver lib.coffee
um diretório, poderá escrever
require './lib'
de outro arquivo CoffeeScript no mesmo diretório. (Para fazer isso a partir de um arquivo JavaScript, você precisará adicioná-lo require 'coffee-script'
na parte superior.) Portanto, você nunca precisará fazer compilação explicitamente no Node, a menos que esteja empacotando seu projeto para implantação com uma ferramenta como o npm.
Uma ressalva: nos rastreamentos de pilha, os números de linha que você verá se referem ao JavaScript compilado, mesmo quando você estiver executando o CoffeeScript diretamente (para que você não tenha acesso ao JavaScript). Muita gente está tentando consertar isso, mas é um grande desafio.
Sim, aqui está uma resposta diferente e mais simples. Você precisa fazer 2 etapas.
npm install coffee-script --save # I assume you would have done this already
.
Ter require('coffee-script')
como a primeira linha que seria executada em server.js
de app.js
. ( ATUALIZAÇÃO: desde o script do café 1.7, você terá que fazerrequire('coffee-script/register'))
Isso registra o compilador de café no seu aplicativo e você pode começar a tratar os arquivos de café e os arquivos js igualmente agora (o que significa que você também pode precisar de arquivos de café!).
Este método exigirá que você escreva apenas um arquivo (app.js) em vanilla javascript. Mas a vantagem é que seu ambiente de implementação não precisa ter coffeescript como uma dependência inicial instalada globalmente para executar seu aplicativo. Nesse caso, você precisaria copiar o código e npm install
instalar todos os pacotes necessários. E npm start
colocaria você em funcionamento
Tutoriais em vídeo
Eu vi uma ótima série de tutoriais de Pedro Teixeira . Ele está construindo uma série inteira de tutoriais de nós. Ele inclui referência ao nodemon para detecção automática, compilação e recarregamento de arquivos .coffee editados.
Você pode usar o Jitter , uma compilação contínua simples para CoffeeScript.
npm install -g jitter
Digamos que você tenha vários arquivos * .coffee no diretório coffee e queira compilá-los no diretório js. Então corra:
jitter coffee js
A tremulação é executada em segundo plano até que você a encerre (Ctrl + C), observando novas alterações.
Tente isto
#!/usr/bin/env coffee
v = 78
console.log "The value of v is '#{v}'"
Então faça:
chmod +x demo.coffee
./demo.coffee
O CoffeeScript possui uma integração bastante sólida com o nó. Uma vez que o módulo 'coffeescript' é carregado, quer por require('coffee-script')
, pelo ela-bang I demo'd acima, ou executando coffee demo.coffee
... uma vez carregado, você pode ser usado require('./foo')
para trazerfoo.coffee
Se você deseja compilar automaticamente todos os seus arquivos coffeescript (em um diretório, incluindo subdir) toda vez que eles mudarem para javascript, use este comando:
find . -name '*.coffee' -type f -print0 | xargs -0 coffee -wc
coffee -o lib/ -cw src/