54

私は Node.js を使用しており、CoffeeScript をワークフローに組み込みたいと考えています。2 つのユースケースがあります。

  1. require()CoffeeScript がモジュール化した JavaScript ファイルを書けるようにしたい
  2. ノード REPL 内から CoffeeScript モジュールをロードできるようにしたい

ケース #1 の場合:回避策として、.coffeeto.jsとモジュールからコンパイルできます。require().js

ケース #2 の場合:現在eval()、 の出力を処理していcoffee-script.compile()ます。

これを行うためのより良い、より統一された方法はありますか?

4

2 に答える 2

95

Coffee-Scriptモジュールは、必要に応じてその拡張子を登録します。

$ echo 'console.log "works"' > module.coffee

$ echo '
> require("coffee-script")
> require("./module")
> ' > test.js

$ node test.js
works

$ node
> require('coffee-script'); require('./module')
works
{}

編集:この動作は、CoffeeScript1.7.0のリリースで変更されました。今、あなたはする必要があります:

require('coffee-script/register');
于 2011-01-22T16:39:59.653 に答える
12

より用途の広い解決策は、より良い要求を使用することです。

npm install better-require

これにより、CoffeeScript ファイルを使用できますrequire()。プリコンパイルは必要ありません。(またrequire()、CoffeeScript、clojurescript、yaml、xml などの他のファイル形式もサポートします。)

CoffeeScript の場合は、単にcoffee-scriptモジュールが必要です。

require('better-require')();
var myModule = require('./mymodule.coffee');
var clojurescriptModule = require('./mymodule.cljs');
// etc.

開示:私は書きbetter-requireました。

于 2012-11-01T15:19:08.600 に答える