Website-Suche

javascript - Kann ich CoffeeScript anstelle von JS für node.js verwenden?


Welche Einschränkungen habe ich, wenn ich Node.js programmieren und CoffeeScript verwenden möchte? Kann ich alles tun, was ich in JS tun könnte?

Antwort #1

Ja, CoffeeScript wird einfach in reines JS kompiliert, wodurch es vollständig mit node.js kompatibel ist.

Um CoffeeScripts auf Node auszuführen, können Sie entweder:

  • Geben Sie coffee -c example.coffee ein, um zu kompilieren, gefolgt von node example.js, um das kompilierte JS auszuführen.
  • Geben Sie einfach coffee example.coffee ein

Antwort #2

Nicht nur können Sie CoffeeScript-Dateien direkt in Node ausführen mit

coffee source.coffee

Sie können sie auch so verlangen, als ob sie JavaScript-Dateien wären. Zum Beispiel, wenn Sie lib.coffee in einem Verzeichnis haben, können Sie schreiben

require './lib'

aus einer anderen CoffeeScript-Datei im selben Verzeichnis. (Um dies von einer JavaScript-Datei aus zu tun, müssen Sie require 'coffee-script' am Anfang hinzufügen.) Sie müssen also unter Node nie explizit kompilieren, es sei denn, Sie packen Ihr Projekt für die Bereitstellung mit einem Tool wie npm.

Ein Vorbehalt: In Stapelverfolgungen beziehen sich die angezeigten Zeilennummern auf das kompilierte JavaScript, selbst wenn Sie CoffeeScript direkt ausführen (also haben Sie keinen Zugriff auf das JavaScript). Viele Leute versuchen, dies zu beheben, aber es ist eine große Herausforderung.

Antwort #3

Ja, hier ist eine andere und einfachere Antwort. Du musst zwei Schritte machen.

  1. npm install coffee-script --save # Ich nehme an, dass du das bereits getan hättest.

  2. Haben Sie require('coffee-script') als die erste Zeile, die in server.js von app.js ausgeführt wird. (UPDATE: seit CoffeeScript 1.7 müssen Sie require('coffee-script/register') verwenden)

Dies registriert den Coffeescript-Compiler in Ihrer App und Sie können nun beginnen, Coffee-Dateien und JS-Dateien gleich zu behandeln (was bedeutet, dass Sie auch Coffee-Dateien require können!).

Diese Methode erfordert, dass Sie nur eine Datei (app.js) in reinem JavaScript schreiben. Der Vorteil ist jedoch, dass Ihre Bereitstellungsumgebung Coffeescript nicht als zuvor global installiertes Abhängigkeitsmodul benötigt, um Ihre App auszuführen. In diesem Fall müssten Sie einfach nur Ihren Code kopieren, und npm install würde alle notwendigen Pakete installieren. Und npm start würde Sie zum Laufen bringen.

Antwort #4

Video-Tutorials

Ich habe eine großartige Tutorial-Serie von Pedro Teixeira gesehen. Er baut eine komplette Serie zu Node-Tutorials auf. Er bezieht sich auf nodemon zur automatischen Erkennung, Kompilierung und zum Neuladen bearbeiteter .coffee-Dateien.

  1. Coffeescript und Node.js
  2. Nodemon

Antwort #5

Sie können Jitter verwenden, eine einfache kontinuierliche Kompilierung für CoffeeScript.

npm install -g jitter

Angenommen, Sie haben eine Menge *.coffee-Dateien im Coffee-Verzeichnis und möchten sie in das js-Verzeichnis kompilieren. Führen Sie dann aus:

jitter coffee js

Jitter läuft im Hintergrund, bis Sie es beenden (Strg+C), und überwacht neue Änderungen.

Verwandte Artikel