2015-04-22 8 views
9

Ho tre file:Come disabilitare la combinazione grunt-contrib-cssmin?

'selectize.default.css' 
'selectize.pagination.css' 
'selectize.patch.css' 

e voglio minimizzarli.

Ecco il mio gruntfile:

cssmin: { 
    min: { 
     files: [{ 
      expand: true, 
      cwd: 'css', 
      src: [ 
       'selectize.default.css', 
       'selectize.pagination.css', 
       'selectize.patch.css', 
       '!*.min.css' 
      ], 
      dest: 'release/css', 
      ext: '.min.css' 
     }] 
    } 
} 

Il problema è che c'è solo un file chiamato selectize.min.css Non voglio di minimizzare un solo file. Come posso minimizzarli tutti e tre?

+0

Quale versione di cssmin stai usando? Sembra che sia obsoleto. Vedi i documenti, che specificano un modo diverso di configurare il plugin: https://github.com/gruntjs/grunt-contrib-cssmin –

+0

no, ho controllato package.json e la versione è 0.12.2 –

risposta

-2

Se ho capito bene la tua domanda, vuoi minimizzare i file, ma non combinarli in uno? In tal caso, la mia raccomandazione sarebbe di effettuare chiamate separate per ogni file. ad esempio:

cssmin: { 
    default: { 
     files: [{ 
      expand: true, 
      cwd: 'css', 
      src: [ 
       'selectize.default.css', 
      ], 
      dest: 'release/css', 
      ext: '.min.css' 
     }] 
    }, 
    pagination: { 
     files: [{ 
      expand: true, 
      cwd: 'css', 
      src: [ 
       'selectize.pagination.css', 
      ], 
      dest: 'release/css', 
      ext: '.min.css' 
     }] 
    }, 
    patch: { 
     files: [{ 
      expand: true, 
      cwd: 'css', 
      src: [ 
       'selectize.patch.css', 
      ], 
      dest: 'release/css', 
      ext: '.min.css' 
     }] 
    }, 
} 

Probabilmente non è il modo più pulito, ma farà ciò che desideri. Non ho testato questo codice, quindi sii avvertito che non so che funzioni.

+4

Sì, mi conosci, funziona molto bene quando il file css è inferiore. ma quando il file css è più di 10 e più, ai programmatori non piace. –

+0

lol @PengLin Voglio incorniciare il tuo commento e metterlo sulla mia bacheca. –

3

Quindi questo biglietto è un po 'vecchio, ma come Peng Lin così eloquentemente affermato sopra, la risposta selezionata è inadeguata per la maggior parte dei programmatori poiché richiede troppa regolazione manuale. Non è mantenibile

Grunt ha un modo per specificare dove si trova il punto di estensione nei nomi di file. Per impostazione predefinita, è impostato sul primo che modifica effettivamente i nomi dei file in uscita. La proprietà si chiama extDot. Puoi leggere su di esso Here se vuoi.

Se si imposta su ultimo, verranno conservati i nomi dei file e l'esempio originale funzionerà.

Esempio:

cssmin: { 
    min: { 
    files: [{ 
     expand: true, 
     cwd: 'css', 
     src: [ 
      'selectize.default.css', 
      'selectize.pagination.css', 
      'selectize.patch.css', 
      '!*.min.css' 
     ], 
     dest: 'release/css', 
     ext: '.min.css', 
     extDot: 'last' // Extensions in filenames begin after the last dot 
    }] 
} } 

Spero che questo aiuti qualcuno in futuro.

Problemi correlati