我正在使用ExpressJS
而app.js
是直接的JavaScript。如果我想使用CoffeeScript,我是否必须重写app.js或者我可以用CoffeeScript
编写其他文件吗?
答案 0 :(得分:7)
您是在谈论在服务器端使用CoffeeScript,还是将其作为编译后的JavaScript提供给客户端?无论哪种方式,都很容易。
只要您的应用程序首先加载了.coffee
库,您就可以使用require
加载coffee-script
个文件。所以只需用
require 'coffee-script'
(当然,在用npm安装之后),从那时起,无论何时写下
require 'foo'
来自您应用的任何部分,它会同时查找foo.js
和foo.coffee
。 (显然,.coffee
文件可以require
.js
文件,这是正确的;从Node的角度来看,.coffee
文件只是JavaScript。)
至于从Express向客户端提供CoffeeScript作为JS,我建议看看我的connect-assets中间件。
答案 1 :(得分:5)
从Coffeescript 1.7.0开始,你需要
require('coffee-script/register');
对提到的
require('coffee-script');
答案 2 :(得分:1)
如果您从.js文件中require("coffee-script")
,那么随后可以require("some-module")
使用CoffeeScript编写某个模块,并且只需要手动编译步骤它就可以“正常工作”。
请参阅此问题:require()'ing a CoffeeScript file from a JavaScript file or REPL