【问题标题】:Watch coffee files and only want to use filename as target观看咖啡文件,只想使用文件名作为目标
【发布时间】:2016-06-16 22:46:39
【问题描述】:

我的文件夹结构

app/tool_1/js/myfile.coffee
app/tool_2/js/myfile2.coffee

...

我想将这些文件编译到一个目录:

server/jsfolder/

Gruntfile.coffee

module.exports = ( grunt ) ->
    grunt.initConfig
        watch:
            tools_coffee:
                files: [ "app/**/*.coffee" ]
                tasks: [ "newer:coffee:tools" ]


        coffee:
            tools:
                expand: true
                cwd: "app"
                src: [ "**/*.coffee" ]
                dest: "server/jsfolder"
                ext: ".js"

问题

整个路径将被复制到dest:

server/jsfolder/tool_1/js/myfile.js

我想要的结果是这样的:

server/jsfolder/myfile.js

有什么解决办法吗?

我为此使用 grunt-newer 和 grunt-watch。

【问题讨论】:

    标签: coffeescript gruntjs watch


    【解决方案1】:

    为了回答您的问题,我相信您需要 flatten 选项,它将从您的 dest 目录中删除源路径。

    rename,回答你的答案,也很酷,看起来像这样:

     dest: 'foo/',
         rename: function(dest, src) {
             return dest + src.replace('foo', 'bar')
         },
     }
    

    【讨论】:

      【解决方案2】:

      有一个函数 rename 可以覆盖名称。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2014-07-18
        • 1970-01-01
        • 2014-02-12
        • 2015-12-28
        • 2013-01-03
        • 2014-10-20
        • 2011-10-12
        • 1970-01-01
        相关资源
        最近更新 更多