Yeoman发电机 - 深拷贝空文件夹结构

时间:2015-07-31 07:25:32

标签: copy directory generator yeoman yeoman-generator

给出以下生成器文件夹结构;我正在尝试深层复制'for_copy'文件夹下的所有文件夹。

  • 生成器根目录
    • 应用
    • 模板
      • for_copy
        • 数据
        • 外部
        • 媒体

所有文件夹都是空的。我想在调用生成器时为我创建这个结构。

我尝试过使用fs.copy,bulkCopy和bulkDirectory。他们都没有做这项工作。

我将非常感谢有关如何实现这一目标的任何线索。

见下面的代码片段:

writing: function() {
        this.log('Writing templates...');

        //doesn't work
        this.fs.copy(
            this.templatePath('for_copy'),
            this.destinationRoot()
            );

        //doesn't work
        this.bulkCopy(
            this.templatePath('for_copy'),
            this.destinationRoot()
            );

        //doesn't work
        this.bulkDirectory(
            this.templatePath('for_copy'),
            this.destinationRoot()
            );

        //doesn't work
        this.bulkDirectory(
            this.templatePath('for_copy') +'**/*',
            this.destinationRoot()
            );
  }

1 个答案:

答案 0 :(得分:3)

Yeoman只关心文件。当您使用bulkDirectory时,实际上是复制文件,而不是目录。

您可以使用mkdirp模块创建目录。

mkdirp.sync(path.join(this.destinationPath(), 'data'));
mkdirp.sync(path.join(this.destinationPath(), 'external'));
// etc ...