2014-04-16 3 views
3

Problème: Je souhaite configurer un module grunt nommé Grunt Markdown et une partie de la configuration nécessite que je fournisse un chemin pour le fichier de destination. Je ne sais pas comment dire à Grunt que je veux que le fichier de destination sorte au même niveau que le fichier Gruntfile.js. Je crois que les chemins de fichiers sont relatifs à Gruntfile.js, et j'ai regardé the documentation pour m'aider à comprendre la syntaxe. Ci-dessous vous trouverez un exemple de travail de mon Gruntfile.jsComment spécifier dans Grunt.js que le chemin du dossier de destination est le même que Gruntfile.js?

module.exports = function(grunt) { 

// Project configuration. 
grunt.initConfig({ 
pkg: grunt.file.readJSON('package.json'), 
uglify: { 
    build: { 
    src: ['js/jquery-1.7.1.min.js','js/jquery.ui.js','js/jquery.iosslider.js','js/jquery.isotope.min.js','js/jquery-css-transform.js','js/jquery-rotate.js','js/browserdetect.js','js/mainactions.js','js/min/gsapi.min.js','js/blurobjs.js','library/scripts/vallenato.js','js/soilsextension_custom.js'], 
    dest: 'js/min/master.min.js' 
    } 
}, 
sass: {        // Task 
dist: {       // Target 
    options: {      // Target options 
    style: 'compressed' 
    }, 
    files: {       // Dictionary of files 
    'css/main-child/main-child.css': 'css/main-child/main-child.scss',  // 'destination': 'source' 
    'css/mobile-child/mobile-child.css': 'css/mobile-child/mobile-child.scss' 
    } 
} 
}, 
concat: { 
options: { 
    separator: ' ', 
}, 
dist: { 
    src: ['css/main-child/main-child.css', 'css/mobile-child/mobile-child.css'], 
    dest: 'css/master-child/master-child.css', 
}, 
}, 
markdown:{ 
all:{ 
    files:[ 
    { 
     expand:true, 
     src:'md/*.md', 
     dest: 
    } 
    ] 
} 
}, 
watch: { 
    scripts: { 
    files: ['js/*.js'], 
    tasks: ['uglify'], 
    options: { 
     livereload: true, 
    }, 
    }, 
    css: { 
    files: '**/*.scss', 
    tasks: ['sass','concat'], 
    options: { 
     livereload: true, 
    }, 

    } 
}, 

imagemin: {       // Task 
    dynamic: {       // Another target 
     files: [{ 
     expand: true,     // Enable dynamic expansion 
     cwd: 'images/',     // Src matches are relative to this path 
     src: ['**/*.{png,jpg,gif}'], // Actual patterns to match 
     dest: 'dist/'     // Destination path prefix 
     }] 
    } 
    } 

}); 
grunt.event.on('watch', function(action, filepath, target) { 
grunt.log.writeln(target + ': ' + filepath + ' has ' + action); 
}); 

// Load the plugin that provides the "uglify" task. 
grunt.loadNpmTasks('grunt-contrib-uglify'); 
grunt.loadNpmTasks('grunt-contrib-sass'); 
grunt.loadNpmTasks('grunt-contrib-concat'); 
grunt.loadNpmTasks('grunt-contrib-watch'); 
grunt.loadNpmTasks('grunt-contrib-imagemin'); 
grunt.loadNpmTasks('grunt-markdown'); 


// Default task(s). 
grunt.registerTask('default', ['uglify']); 
grunt.registerTask('default', ['sass']); 
grunt.registerTask('default', ['concat']); 
grunt.registerTask('default', ['watch']); 
grunt.registerTask('default', ['imagemin']); 
grunt.registerTask('default', ['markdown']); 

}; 

Question: Quelle est la syntaxe nécessaire pour dire Grunt que mon chemin de destination est à l'origine du projet, et quelles sont les règles de syntaxe ne ce suivi (pour que je puisse les référencer plus tard si nécessaire)?

Répondre

3

utiliser Just:

markdown: { 
    all: { 
    files:[ 
     { 
     expand:true, 
     src: 'md/*.md', 
     dest: './'   
     } 
    ] 
} 
0

démarques: { tous: { fichiers: [ { agrandir: true, src: 'md/* md', Aplatir: true } ] }

Utilisez flatten pour supprimer la structure de répertoires.

Remerciements

Questions connexes