2014-04-16 18 views
3

问题:我想配置一个名为Grunt Markdown咕噜模块,以及配置的一部分要求我提供目标文件的路径。我不知道如何告诉Grunt我希望目标文件输出到与Gruntfile.js文件相同的级别。如何在Grunt.js中指定目标文件夹路径与Gruntfile.js相同?

信息:我相信文件路径是相对于Gruntfile.js,我看着the documentation来帮助我理解语法。下面你会发现我的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']); 

}; 

问题的工作示例:什么是必要告诉格朗特我的目标路径是在项目的根目录中的语法,这也遵循什么语法规则(如果需要,以后我可以参考它们)?

回答

3

只需使用:

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

降价:{ 所有:{ 文件:[ { 扩大:真实, SRC: 'MD/* MD', 压平:真 } ] }

使用flatten剥离的目录结构。

谢谢

相关问题