5

そのため、プロジェクトにyeoman.ioを使用しており、画像のフォルダー構造を設定しています。しかし、ビルドすると、ファイルのファイル名が変更されます。

私も使用します:

$ yeoman build:text

css、js、htmlテンプレートのみを縮小したいのですが、それでも画像は縮小されます。私が何か間違ったことをしているかどうかわからない。

編集:

gruntfile内のimgのすべてのインスタンスをコメントアウトしましたが、それは機能しているように見えましたが、それが正しい方法だとは思いません。

4

2 に答える 2

20

画像の最適化または修正を意味しますか?自分のニーズに合わせてGruntFile.jsを設定するのに問題はありません。適応性が高いため、ヨーマン/グラントは非常に強力です。

画像の最適化が必要ない場合は、imgタスクの構成を削除してください。

// Optimizes JPGs and PNGs (with jpegtran & optipng)
   img: {
   },

画像ファイルの名前を変更したくない場合は、タスクimgから次の行を削除します。rev

// renames JS/CSS to prepend a hash of their contents for easier
// versioning
rev: {
  js: 'scripts/**/*.js',
  css: 'styles/**/*.css'
},
于 2013-01-14T21:17:07.853 に答える
1

回転している画像を削除するとキャッシュが無効になる場合は、代わりに回転を維持してJSファイルを更新するようにしてください。

useminブロックを次のようなものに更新してみてください。

usemin: {
    html: ['<%= yeoman.dist %>/{,*/}*.html'],
    css: ['<%= yeoman.dist %>/styles/{,*/}*.css'],
    js: '<%= yeoman.dist %>/scripts/{,*/}*.js',
    options: {
        assetsDirs: [
            '<%= yeoman.dist %>',
            '<%= yeoman.dist %>/images',
            '<%= yeoman.dist %>/styles'
        ],
        patterns: {
            js: [
                [/(images\/.*?\.(?:gif|jpeg|jpg|png|webp|svg))/gm, 'Update the JS to reference our revved images']
            ]
        }
    }
}

すでにuseminメソッドが必要jsです。jsパス正規表現を使用して属性を追加し、属性を追加するだけpatternです。これにより、JSファイル内のすべての画像が新しいバージョンに置き換えられ、クライアントのブラウザが新しい画像の代わりにキャッシュされた画像を使用しないようになります。

于 2015-09-29T00:33:54.413 に答える