javascript - 使用 Grunt Copy Task 时文件树的扁平化

标签 javascript node.js gruntjs

不确定我是否遗漏了什么,但我为 grunt-contrib-copy 任务设置了以下 grunt 设置。

copy: {
  build: {
    files: {
      "server-dist/": "server/**/*.!(coffee)",
      "client-dist/": "client/**/*.!(coffee)"
    }
  }
}

如我所料,client-dist 副本递归地运行文件树,但 server-dist 的所有子文件夹都被展平到基本文件夹。任何想法为什么会这样?这是 i/o

server/
  views/
    errors/
      404.jade
    layouts/
      base.jade

成为

server/
  errors/
  layouts/
    base.jade

views 文件夹被彻底炸毁了。还有一件事......当我删除 !(coffee) 时它可以工作,但我需要排除咖啡文件,因为我有一个 grunt-coffee watch 任务正在运行。

最佳答案

zacks 评论的后续:

copy: {  
    mytask: {  
        files: [  
        {expand:true, cwd:'dev-js/abc/', dest:'js/test/', src:['def.js']}  
        ]  
    }  
}  

这会将文件 ./dev-js/abc/def.js 复制到 ./js/test/def.js - 至少在我的 0.4.1 上版本。 Zacks 的评论和包含的链接非常有帮助,尤其是 basePath 已被替换这一事实。

关于javascript - 使用 Grunt Copy Task 时文件树的扁平化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13389952/

相关文章:

javascript - 在 AngularJS 中的状态之间共享值

javascript - 如何修复 Vue js 3 上的 "Vue packages version mismatch"错误

javascript - AngularJS : factory $http. get 请求不断获取 html 文件作为返回

gruntjs - 带有 grunt-connect-proxy 的 yeoman webapp 不起作用

javascript - Web Audio onaudioprocess 在 Firefox 中有效,JSFiddle 在 Chrome 中有效,但在 Chrome 本身中无效

javascript - 显示 POST 到页面的结果

javascript - 错误: spawn ENOENT for video upload

html - 为什么我的 SVG 图标在使用 grunt svg sprite 时被剪掉了?

javascript - 如何咕噜监视子文件夹中的文件?

javascript - 如何使这个 Javascript 在成功时将用户重定向到另一个页面而不是向上滑动面板