Kann ich Coffeescript anstelle von JS für node.js verwenden?
-
10-10-2019 - |
Frage
Was sind meine Einschränkungen, wenn ich Code node.js wollen und Coffeescript verwenden? Kann ich irgendetwas tun würde ich in der Lage sein, in JS zu tun?
Lösung
Ja, Coffeescript kompiliert einfach in reine JS, so dass es vollständig kompatibel mit node.js.
Um CoffeeScripts auf dem Knoten ausführen, können Sie entweder:
- Typ
coffee -c example.coffee
zur Kompilierung vonnode example.js
folgte der kompilierten JS auszuführen. - Geben Sie einfach
coffee example.coffee
Andere Tipps
Sie können nicht nur laufen Coffeescript-Dateien direkt in Knoten mit
coffee source.coffee
können Sie diese auch benötigen, als ob sie JavaScript-Dateien waren. Zum Beispiel, wenn Sie lib.coffee
in einem Verzeichnis haben, können Sie schreiben
require './lib'
aus einer anderen Datei in Coffeescript demselben Verzeichnis. (Um dies von einer JavaScript-Datei zu tun, werden Sie require 'coffee-script'
an der Spitze hinzufügen.) Also, Sie müssen nie explizit unter Node Kompilation tun, es sei denn, Sie paketieren Ihr Projekt für den Einsatz mit einem Tool wie npm.
Eine Einschränkung: In Stack-Traces, die Zeilennummern Sie werden auf die kompilierten JavaScript verweisen sehen, auch wenn Sie direkt Coffeescript ausführen (so dass Sie keinen Zugriff auf die JavaScript haben). Viele Leute versuchen, dieses Problem zu beheben, aber es ist eine große Herausforderung.
Ja, hier ist eine andere und einfachere Antwort. Sie müssen zwei Schritte tun.
-
npm install coffee-script --save # I assume you would have done this already
. -
Haben Sie
require('coffee-script')
als die erste Zeile, die inserver.js
vonapp.js
erhalten ausgeführt würde. ( UPDATE: , da Kaffee Skript 1.7, werden Sie zu tun habenrequire('coffee-script/register'))
Dieses Register Compiler Coffeescript, um Ihre Anwendung und Sie können gleich jetzt die Behandlung von Kaffee-Dateien und js Dateien starten (was bedeutet, dass Sie Kaffee-Dateien verlangen können!).
Diese Methode erfordert, dass Sie nur die eine Datei (app.js) in Vanille Javascript zu schreiben. Aber der Vorteil ist, dass Ihre deploy Umgebung nicht Coffeescript als anfängliche weltweit installierten Abhängigkeit Ihre Anwendung zu laufen zu haben braucht. In diesem Fall müssten Sie nur den Code kopieren über und npm install
würden alle erforderlichen Pakete installieren. Und npm start
würden Sie und läuft
Video Tutorials
Ich habe eine große Tutorial-Serie gesehen von Pedro Teixeira . Er baut eine ganze Reihe an Knoten Tutorials. Er schließt den Bezug auf nodemon für die automatische Erkennung und Erfassung und Nachladen von bearbeiteten .coffee Dateien.
Sie können mit Bammel , eine einfache kontinuierliche Zusammenstellung für Coffeescript.
npm install -g jitter
Angenommen, Sie haben eine Reihe von * .coffee Dateien im Verzeichnis Kaffee, und wollen, dass sie in das js Verzeichnis kompilieren. Dann führen Sie:
jitter coffee js
Bammel läuft im Hintergrund, bis Sie sie (Strg + C) beenden, für neue Veränderungen zu beobachten.
+ Coffee Express.js + CouchDB + Redis + Auth:
Versuchen Sie diese
#!/usr/bin/env coffee
v = 78
console.log "The value of v is '#{v}'"
Dann tun:
chmod +x demo.coffee
./demo.coffee
hat Coffee ziemlich solide Integration mit Knoten. Sobald der ‚Kaffee-Skript‘ Modul geladen wird, entweder durch require('coffee-script')
, durch die sie Bang demo'd ich oben oder durch coffee demo.coffee
läuft ... einmal geladen, können Sie require('./foo')
zu bringen in foo.coffee
Wenn Sie möchten, um automatisch alle Ihre Dateien kompilieren Coffeescript (in einem Verzeichnis mit subdir) jedes Mal, wenn sie in Javascript zu ändern, nur mit diesem Befehl:
find . -name '*.coffee' -type f -print0 | xargs -0 coffee -wc