节点应用程序与coffeescript和gulp

时间:2014-07-03 22:14:13

标签: javascript node.js coffeescript gulp

我对节点很陌生,但我试图通过采用已构建的框架(skeleton)并将其转换为coffeescript来深入研究。

所以这有一个配置文件夹,包含config.jspassport.jsutils.js个文件......显然,在根目录app.js中。他使用gulp,所以有一个gulpfile.js。我想将这些文件转换为coffeescript,而不仅仅是用户js文件。这是不好的做法吗?我已经将gulp-coffee添加为devDependency,将coffee-script添加为依赖项。

重建上述文件并重命名后......

[12:23:40] 'coffee' errored after 61 μs
[12:23:40] Error: Invalid glob argument
  at Gulp.src (/Users/brett/Dropbox/Apps/mean_projects/skeleton/node_modules/gulp/node_modules/vinyl-fs/lib/src/index.js:17:11)

... and further down

[gulp] [nodemon] starting `coffee --debug app.coffee`
/Users/brett/Dropbox/Apps/mean_projects/skeleton/config/config.coffee: line 1, col 1, Expected an assignment or function call and instead saw an expression.
/Users/brett/Dropbox/Apps/mean_projects/skeleton/config/config.coffee: line 1, col 13, Missing semicolon.
/Users/brett/Dropbox/Apps/mean_projects/skeleton/config/config.coffee: line 3, col 1, Expected an identifier and instead saw '#'.

显示config.coffee,并且我从js转换为coffee(app,app_cluster,gulpfile,utils,passport等)的每个文件都有错误块。

关于这个主题的任何帮助都会很好......我已经阅读了不少文章(有些人讨厌coffeescript)但没有真正展示如何处理这个问题。

1 个答案:

答案 0 :(得分:0)

如果您使用gulp 3.7+,则开箱即用支持gulpfile.coffee。无需进行任何额外设置。

如果你必须使用更早的版本,你可以通过将其添加到其中来引导coffeescript:

// Note the new way of requesting CoffeeScript since 1.7.x
require('coffee-script/register');
// This bootstraps your Gulp's main file
require('./Gulpfile.coffee');

然后你可以把你的设置放在gulpfile.coffee中。

这是你的意思吗?