9

私は3つのファイルを持っています:

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

私はそれらを最小限に抑えたいと思っています。

ここに私のうなり声があります:

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'
         }]
     }
}

問題は、という名前のファイルが 1 つしかselectize.min.css ないことです。1 つのファイルだけを最小化したくありません。3つすべてを最小化するにはどうすればよいですか?

4

2 に答える 2

4

したがって、このチケットは少し古いものですが、Peng Lin が上で雄弁に述べているように、選択された回答はほとんどのプログラマーにとって不適切です。それは維持可能ではありません。

Grunt には、拡張子ドットがファイル名のどこにあるかを指定する方法があります。デフォルトでは、出力のファイル名を効果的に変更する最初のものに設定されています。プロパティは extDot と呼ばれます。必要に応じて、ここでそれについて読むことができます。

lastに設定すると、ファイル名が保持され、元の例が機能します。

例:

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
     }]
 }  }

これが将来誰かに役立つことを願っています。

于 2015-12-09T15:18:43.500 に答える
-2

あなたの質問を正しく理解できれば、ファイルを最小化したいのですが、それらを 1 つに結合したくないですか? その場合、ファイルごとに個別の呼び出しを行うことをお勧めします。例えば:

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'
         }]
     },
 }

これはおそらく最もクリーンな方法ではありませんが、必要なことは実行できます。私はこのコードをテストしていないので、動作するかどうかわからないことに注意してください。

于 2015-04-22T03:59:14.153 に答える