Quelles sont mes restrictions si je veux coder node.js et utiliser CoffeeScript? Puis-je faire tout ce que je pourrais faire dans JS?
Réponses:
Oui, CoffeeScript se compile simplement en JS pur, ce qui le rend totalement compatible avec node.js.
Pour exécuter CoffeeScripts sur le nœud, vous pouvez soit:
coffee -c example.coffee
pour compiler, suivi de node example.js
pour exécuter le JS compilé.coffee example.coffee
require
décompiler des fichiers coffeescript aussi longtemps que vous require('coffee-script')
au préalable.
coffee example.coffee
principalement destinée au développement? Ou est-ce suffisamment stable pour être utilisé en production?
sudo npm install -g coffee-script
Non seulement vous pouvez exécuter des fichiers CoffeeScript directement dans Node avec
coffee source.coffee
vous pouvez également en avoir besoin comme s'il s'agissait de fichiers JavaScript. Par exemple, si vous avez lib.coffee
dans un répertoire, vous pouvez écrire
require './lib'
à partir d'un autre fichier CoffeeScript dans le même répertoire. (Pour faire cela à partir d'un fichier JavaScript, vous devrez ajouter require 'coffee-script'
en haut.) Ainsi, vous n'avez jamais à faire de compilation explicitement sous Node, à moins que vous n'emballiez votre projet pour le déploiement avec un outil comme npm.
Une mise en garde: dans les traces de pile, les numéros de ligne que vous verrez font référence au JavaScript compilé, même lorsque vous exécutez directement CoffeeScript (vous n'avez donc pas accès au JavaScript). Beaucoup de gens essaient de résoudre ce problème, mais c'est un gros défi.
Oui, voici une réponse différente et plus simple. Vous devez faire 2 étapes.
npm install coffee-script --save # I assume you would have done this already
.
Avoir require('coffee-script')
comme première ligne qui serait exécutée dans server.js
de app.js
. ( MISE À JOUR: depuis coffee script 1.7, vous devrez fairerequire('coffee-script/register'))
Cela enregistre le compilateur coffeescript dans votre application et vous pouvez commencer à traiter les fichiers coffee et les fichiers js également maintenant (ce qui signifie que vous pouvez également avoir besoin de fichiers coffee!).
Cette méthode vous demandera d'écrire un seul fichier (app.js) en javascript vanilla. Mais l'avantage est que votre environnement de déploiement n'a pas besoin d'avoir coffeescript comme dépendance initiale installée globalement pour exécuter votre application. Dans ce cas, il vous suffirait de copier votre code et d' npm install
installer tous les packages nécessaires. Et vous npm start
mettrait en marche
Tutoriels vidéos
J'ai vu une superbe série de tutoriels de Pedro Teixeira . Il a construit toute une série de tutoriels sur les nœuds. Il inclut une référence à nodemon pour la détection automatique, la compilation et le rechargement des fichiers .coffee modifiés.
Vous pouvez utiliser Jitter , une compilation continue simple pour CoffeeScript.
npm install -g jitter
Disons que vous avez un tas de fichiers * .coffee dans le répertoire coffee et que vous voulez les compiler dans le répertoire js. Puis exécutez:
jitter coffee js
Jitter s'exécute en arrière-plan jusqu'à ce que vous y mettiez fin (Ctrl + C), en regardant les nouveaux changements.
Essaye ça
#!/usr/bin/env coffee
v = 78
console.log "The value of v is '#{v}'"
Alors fais:
chmod +x demo.coffee
./demo.coffee
CoffeeScript a une intégration assez solide avec node. Une fois le module 'coffee-script' chargé, soit par require('coffee-script')
, par le she-bang dont j'ai fait la démonstration ci-dessus, soit en exécutant coffee demo.coffee
... une fois chargé, vous pouvez utiliser require('./foo')
pour apporterfoo.coffee
Si vous souhaitez compiler automatiquement tous vos fichiers coffeescript (dans un répertoire comprenant le sous-répertoire) chaque fois qu'ils se transforment en javascript, utilisez simplement cette commande:
find . -name '*.coffee' -type f -print0 | xargs -0 coffee -wc
coffee -o lib/ -cw src/