- READMEと例は次のとおりです:https : //github.com/gruntjs/grunt-contrib-copy/blob/master/README.md。
- https://github.com/gruntjs/grunt-contrib-copy/blob/master/tasks/copy.jsからのコードの関連部分(私はどうやら理解できないようです)は次のとおりです。
module.exports = function(grunt){
'厳格な使用';
var path = require( 'path');
grunt.registerMultiTask( 'copy'、 'Copy files。'、function(){
var kindOf = grunt.util.kindOf;
var options = this.options({
processContent:false、
processContentExclude:[]
});
var copyOptions = {
プロセス:options.processContent、
noProcess:options.processContentExclude
};
grunt.verbose.writeflags(options、 'Options');
var dest;
var isExpandedPair;
var tally = {
dirs:0、
ファイル:0
};
this.files.forEach(function(filePair){
isExpandedPair = filePair.orig.expand || false;
filePair.src.forEach(function(src){
if(detectDestType(filePair.dest)=== 'directory'){
dest =(isExpandedPair)?filePair.dest:unixifyPath(path.join(filePair.dest、src));
} そうしないと {
dest = filePair.dest;
}
if(grunt.file.isDir(src)){
grunt.verbose.writeln( 'Creating' + dest.cyan);
grunt.file.mkdir(dest);
tally.dirs ++;
} そうしないと {
grunt.verbose.writeln( 'Copying' + src.cyan + '->' + dest.cyan);
grunt.file.copy(src、dest、copyOptions);
tally.files ++;
}
});
});
受け入れられた答えが正しくないことを知っていますか?以下のこの回答を参照してください。
—
DavidPärsson19年