2016-03-30 8 views
0

私はイメージをminify'ingしているgruntスクリプト(誰かによって書かれた)を持っていますが、ソースとデスティネーションは同じフォルダです。私の考えでは、ソースが上書きされたイメージで上書きされているようです。ここでGruntJSとimagemin、 'src'を上書きすることはできますか?

imagemin: { 
     options: { 
     compress: true 
     }, 
     dist : { 
     files: [ 
      { 
      expand: true, 
      cwd : 'templates', 
      src : ['**/*.{png,jpg,gif}'], 
      dest : 'templates' 
      } 
     ] 
     } 
    } 

gruntfile.jsからのセクションである「ウォッチ」タスクとファイルが再処理されていないので、使用中で「新しい」もあります。

これは問題ありませんか?または、ソースとデスティネーションが常に異なる必要がありますか?私は 'jpg'と 'gif'が 'ロスレス'の味で来るとは思わない。私は、スクリプトが 'newer'を使用しているため、再起動後も存続していることのキャッシュを保持していると言われています。

+0

はい、問題なく動作します。以前のリリースからプロジェクトに追加されたsvgファイルを最適化するために私のプロジェクトをリリースする前に実行される同様のタスクがあります。 – theaccordance

答えて

0

これは恐ろしい考えのようです。

srcをsrc: ['large/**/*.{png,jpg,gif}'],に変更して元のイメージをそこにドロップすることは間違いありません。

newerはまだ圧縮されているファイルを追跡しますが、元の高解像度画像は別のlargeフォルダに保存されます。

MORE:私自身のプロジェクトで

けれども、私はそうsrc/img/**/*がちょうどimgに圧縮して出力され、プロジェクトの最上位ディレクトリでsrcフォルダを持っています。これは、トップレベルのsrcディレクトリにあるソースファイルと、準備が整ったソースファイルの完全な分割です。スタティックサイトの場合はsrc、上部の場合はdest/build/whateverディレクトリにあります。

関連する問題