我想知道是否有可能使用 2.0.2(或trunk)将我的所有assets/*.coffee
文件编译成一个定义的(比如 app.js 和 app.min.js)文件,从而不使用本机编译器?
问问题
1660 次
2 回答
1
由于 scala coffeescript 进程目前似乎支持的唯一选项是“bare”(http://www.playframework.com/documentation/2.0.2/AssetsCoffeeScript#options),你可能必须有一个进程包装你的咖啡脚本,然后将它们放在适当的文件中。您可以将 grunt 用于该任务。和插件 grunt-contrib-coffee 来处理文件
coffee:
compile:
files:
'app/assets/app.js': [
'file1.coffee'
'file2.coffee'
]
将按顺序编译这些 src 文件并将编译后的文件放在 app/assets/app.js 中,该文件应该被 play 拾取。
grunt-contrib-coffee:https ://github.com/gruntjs/grunt-contrib-coffee
于 2014-06-24T15:03:01.160 回答
0
您不能只编写构建脚本或使用cakefile吗?类似这样的东西:
fs = require 'fs'
{exec} require 'child_process'
fs.readdir 'path/to/coffee/', (err, files) ->
concat_result = ''
concat_file = 'path/to/concat_file.coffee'
for file in files
concat_result += fs.readFileSync file, 'utf8'
concat_file = fs.writeFile concat_file, concat_result
exec "whatever_compiler -c -o path/to/outfile #{concat_file}", (err, stdout, stderr) ->
#handle errs
于 2012-07-28T17:55:01.480 回答