2012-12-14 18 views
14

プロジェクト用にyeomanを使用しています。同じ名前の2つのタスクを読み込むにはどうすればよいですか?

基本的にはうまくいきますが、ビルド中にイメージフォルダを別の場所に移動したいと考えています。

私はそれを可能にするgrunt-contrib-copyタスクをロードしました。しかし、残念なことに、これは正義の内蔵コピータスクと衝突します。

私のGruntfile.jsgrunt-contrib-copyのエイリアスを付ける方法はありますか?私は両方を使用できますか?

grunt.loadNpmTasks('grunt-contrib-copy'); 

//Here I need to use "copy" again but not referencing the yeoman task but the grunt-contrib-copy task. 
grunt.registerTask('build','intro clean coffee compass mkdirs concat css min replace copy time'); 

答えて

30

grunt.renameTask()おそらくあなたを助けます。試してみてください:

// temporarily rename yeoman's copy task 
grunt.renameTask('copy', 'yeomanCopy'); 
// load 'copy' from grunt-contrib-copy 
grunt.loadNpmTasks('grunt-contrib-copy'); 
// rename it to something other than 'copy' 
grunt.renameTask('copy', 'myCopy'); 
// rename yeoman's task back to its original name so nothing breaks 
grunt.renameTask('yeomanCopy', 'copy'); 

// now use 'myCopy' for your purposes 
// ... 
+0

ありがとうございます!私はいくつかのタスクが特定のタスクが以前に実行されているかどうかをチェックし、名前の変更についてはわからないという問題がありますが -/ – acme

+0

しかし、あなたは既存のyeomanのタスクの名前を直ちに元に戻しますね。 –

+0

おっと、元のタスクの名前を変更するのを止めました。もちろん、あなたは正しいです。ドミトリーありがとう! – acme

関連する問題