编译为`.js`,保持相同的文件夹结构

时间:2013-04-08 14:45:35

标签: coffeescript gruntjs

在我的应用程序(Asp.net mvc)中,我有以下文件夹结构:

Foder structure

Scripts文件夹包含所有.js.coffee个文件。在文件夹Controllers内,我有一个每个控制器的文件夹。

我需要在.coffee文件发生更改时,在同一文件夹中创建一个新文件.js

module.exports = (grunt) -> 
    # Configurações
    grunt.initConfig
        coffee:
            compile:
                options:
                    basePath: 'Scripts'
                    preserve_dirs: true
                files: 'Scripts/*.js': 'Scripts/**/*.coffee'

    # Plugins
    grunt.loadNpmTasks 'grunt-contrib-coffee'

当我运行grunt:grunt coffee 时,会发生以下错误:

  

无法编写“Scripts / * .js”文件(错误代码:ENOENT)。使用--force继续

Erro grunt

1 个答案:

答案 0 :(得分:11)

以这种方式使用:

coffee:
  compile:
    files: [
      expand: true
      cwd: "./Scripts"
      src: ["**/*.coffee"]
      dest: "./Scripts"
      ext: ".js"       
    ]

在此处详细了解:http://gruntjs.com/configuring-tasks#building-the-files-object-dynamically