0

私は yeoman と grunt を使用して、haml ファイルを html ファイルに変換しようとしています。すべての .haml ファイルは 内に/app/sourceあり、すべての html ファイルを 1 レベル下の 内に配置し/appます。単一のファイルの変換は正常に機能します。これは、私の Gruntfile.js で使用しているコードです

    files: {
      '<%= yeoman.app %>/tester.html': '<%= yeoman.app %>/source/tester.haml',
    }

しかし、すべてのファイルを個別にリストしたくないので、次のようなことを試しましたが、うまくいきません:

    files: grunt.file.expandMapping(['<%= yeoman.app %>/source/*.haml'], '<%= yeoman.app %>/source/', {
      rename: function(base, path) {
        return base + path.replace(/.haml$/, '.html');
      }
    })

このコードは、内部のサブディレクトリでも機能しない可能性があり/sourceます。それで、私はこれをどのように行うべきですか?

4

1 に答える 1

2

簡単な答え:ファイル オブジェクトを動的に構築する

さらなる説明:

expand: true;                    //Enable options below
cwd: '<%= yeoman.app %>/source'; //Current working directory
src: '**/*.haml';                //All files under cwd, including sub-directories
dest: '<%= yeoman.app %>';       //Destination path prefix
ext: '.html';                    //Replace file's extension name
flatten: false;                  //KEEP folder structure

このコードを使用して、元の「ファイル」プロパティ GL を置き換えます。

于 2013-06-21T17:04:11.333 に答える