Grunt任务:动态源文件夹&依赖于源位置的动态输出文件夹

时间:2016-01-04 13:56:20

标签: javascript node.js gruntjs babeljs grunt-contrib-watch

我的项目有“Scripts”文件夹,其中有很多子文件夹都是javascript文件。

目前我正在将babel整合为一项艰巨的任务。需要转换的所有文件都有名称“* .babel.js”,所以在我的watch对象中我有这样的任务:

babel: {
    files: 'Content/styles/**/*.babel.js',
    tasks: [
        'babel'
    ]
},

我的babel任务选项对象是:

  

“babel”:{       选项:{         sourceMap:true       },       dist:{         档案:{           “dist / app.js”:“src / app.js”         }       }}

请注意大胆的部分。是否可以选择名称为“* .babel.js”的所有文件,并将编译后的文件与源文件夹放在同一文件夹中?

我在这里要做的是避免将每个* .babel.js定义为配置对象,因为有大量文件,还有更多... +我的所有文件都在不同的级别脚本子文件夹。

这可能吗?

1 个答案:

答案 0 :(得分:0)

解决了它,babel对象:

{
    options: {
        sourceMap: true
    },
    dist: {
        files: [
            {
                "expand": true,
                "cwd": "Scripts/",
                "src": ["**/*.babel.js"],
                "dest": "Scripts/",
                "ext": ".js"
            }
        ]
    }
}

这会将脚本文件编译到源文件所在的同一文件夹中。