2017-03-01 1 views
0

Je construis un site Web avec Bootstrap en utilisant moins. J'utilise grunt pour automatiser les tâches.Grunt tâche avec grunt-contrib-less - comment compiler plusieurs feuilles de style tout en conservant leur nom de fichier .less original

Dans mes gruntfile.js J'ai cette partie:

less: { 
    compileCore: { 
    options: { 
     strictMath: true, 
     sourceMap: true, 
     outputSourceFiles: true, 
     sourceMapURL: '<%= pkg.name %>.css.map', 
     sourceMapFilename: 'dist/css/<%= pkg.name %>.css.map' 
    }, 
    src: 'less/bootstrap.less', 
    dest: 'dist/css/<%= pkg.name %>.css' 
    }, 
    compileBrandingStyles: { 
    options: { 
     strictMath: true, 
     sourceMap: false, 
     outputSourceFiles: false 
    }, 
    src: 'less/branding/**/*.less', 
    dest: 'dist/css/<%= what do I put here? %>.css' 
    } 
}, 

Dans « compileBrandingStyles » je voudrais chercher tous les fichiers * .Moins dans un dossier et les compiler dans des fichiers séparés avec leurs css noms de fichiers d'origine . Pas de concaténation.

Dans le dossier: less/branding J'ai x nombre de fichiers .Moins:

theme-1.less 
theme-2.less 
theme-3.less 
theme-4.less 

Je voudrais les sortir dans le dossier dist/css/ comme ceci:

theme-1.css 
theme-2.css 
theme-3.css 
theme-4.css 

Alors, comment devrais-je écrire cette partie pour garder leurs noms de fichiers?

dest: 'dist/css/<%= what do I put here? %>.css' 
+0

La réponse ci-dessous ne correspond pas à vos besoins? – RobC

Répondre

0

votre Reconfigurer compileBrandingStyles cible à ce lieu:

// ... 
compileBrandingStyles: { 
    options: { 
     strictMath: true, 
     sourceMap: false, 
     outputSourceFiles: false 
    }, 
    files: [{ 
     expand: true, 
     cwd: 'less/branding/', 
     src: ['**/*.less'], 
     dest: 'dist/css/', 
     ext: '.css' 
    }] 
} 

Voir plus d'information à ce sujet dans le grognement docs.


EDIT

Si vous ne » voulez que les sous-dossiers inclus dans le dossier de destination flatten utiliser.

// ... 
compileBrandingStyles: { 
    options: { 
     strictMath: true, 
     sourceMap: false, 
     outputSourceFiles: false 
    }, 
    files: [{ 
     expand: true, 
     cwd: 'less/branding/', 
     src: ['**/*.less'], 
     dest: 'dist/css/', 
     ext: '.css', 
     flatten: true // <-- Remove all path parts from generated dest paths. 
    }] 
} 
+0

** Réponse ** mise à jour avec l'option 'flatten'. – RobC

+0

C'est parfait. Merci beaucoup pour votre aide. – Meek