3

grunt-file-append を使用して複数のファイルにテキストを追加する方法

https://www.npmjs.com/package/grunt-file-append

grunt.initConfig({
  file_append: {
    default_options: {
      files: [
        {
          append: "text to append",
          prepend: "text to prepend",
          input: '/path/to/input/file'
          output: 'path/to/output/file'
        }
      ]
    }
  }
})

このように関数を記述すると、複数のファイルに追加するためにエラーが発生します。

grunt.initConfig({
  file_append: {
    default_options: {
      files: [
        {
          append: "text to append",
          prepend: "text to prepend",
          input: './path/to/input/*.html'
          output: 'path/to/output/*.html'
        }
      ]
    }
  }
})

次のエラーが表示されます。

Running "file_append:default_option" (file_append) task
>> Source file "./path/to/output/*.html" not found.
Warning: Task "file_append:default_option" failed. Use --force to continue.

Aborted due to warnings.

単一のファイルへの追加は機能しますが、複数のファイルでは機能しません。ここで間違っていることは何でもありません。

4

3 に答える 3

3

@jmartins が言及したように、コードは「something/*.html」を処理するように設定されていません。複数のファイルを追加する唯一の方法 (ソース コードを修正する以外) は、配列に複数のオブジェクトを含めることだと思います。

file_append: {
        default_options: {
            files: [{
                prepend: 'something',
                input: '<%= config.dist %>/<%= config.distScripts %>/script1.js',
                output: '<%= config.dist %>/<%= config.distScripts %>/script1.js'
            }, {
                prepend: 'something',
                input: '<%= config.dist %>/<%= config.distScripts %>/script2.js',
                output: '<%= config.dist %>/<%= config.distScripts %>/script2.js'
            }, {
                prepend: 'something',
                input: '<%= config.dist %>/<%= config.distScripts %>/script3.js',
                output: '<%= config.dist %>/<%= config.distScripts %>/script3.js'
            }]
        }
    }

更新するファイルがたくさんある場合、これはうまくいきませんが、ファイルがたくさんある場合、または有限でない場合は、必要なことを行うためにソースを単に更新する方が簡単でしょう。そのため、grunt ファイルを常に更新したくありません。

于 2016-02-03T16:27:07.730 に答える