What are my restrictions if I want to code node.js and use CoffeeScript? Can I do anything I'd be able to do in JS?
相关问题
- Is there a limit to how many levels you can nest i
- How to toggle on Order in ReactJS
- void before promise syntax
- npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fs
- Keeping track of variable instances
Try this
Then do:
CoffeeScript has pretty solid integration with node. Once the 'coffee-script' module is loaded, either by
require('coffee-script')
, by the she-bang I demo'd above, or by runningcoffee demo.coffee
... once loaded, you can usedrequire('./foo')
to bring infoo.coffee
If you want to automatically compile all your coffeescript files (in one directory including subdir) every time they change into javascript, just use this command:
Yes, CoffeeScript simply compiles into pure JS, making it completely compatible with node.js.
To run CoffeeScripts on node, you can either:
coffee -c example.coffee
to compile, followed bynode example.js
to run the compiled JS.coffee example.coffee
Yes, here's a different & simpler answer. You need to do 2 steps.
npm install coffee-script --save # I assume you would have done this already
.Have
require('coffee-script')
as the first line that would get executed inserver.js
ofapp.js
. (UPDATE: since coffee script 1.7, you will have to dorequire('coffee-script/register'))
This registers coffeescript compiler to your app and you can start treating coffee files and js files equally now (meaning that you can require coffee files too !).
This method will require you to write just the one file (app.js) in vanilla javascript. But the advantage is that your deploy environment need not have coffeescript as an initial globally installed dependency to run your app. In this case, you would just have to copy over your code, and
npm install
would install all packages necessary. Andnpm start
would have you up and runningVideo Tutorials
I've seen a great tutorial series by Pedro Teixeira. He's been building an entire series on node tutorials. He includes reference to nodemon for auto detection and compilation and reloading of edited .coffee files.
Not only can you run CoffeeScript files directly in Node with
you can also require them as if they were JavaScript files. For instance, if you have
lib.coffee
in a directory, you can writefrom another CoffeeScript file in the same directory. (In order to do this from a JavaScript file, you'll have to add
require 'coffee-script'
at the top.) So, you never have to do compilation explicitly under Node, unless you're packaging your project for deployment with a tool like npm.One caveat: In stack traces, the line numbers you'll see refer to the compiled JavaScript, even when you're running CoffeeScript directly (so you don't have access to the JavaScript). A lot of folks are trying to fix this, but it's a big challenge.