6

angularjs プロジェクトで grunt と usemin を使用しています。特に私の問題はusemin、ビューのサブディレクトリ内の *.html ファイルのイメージ タグを更新しないことに関係しています。

私の .html ファイルは次の構造になっています

dist/
    index.html
    views/
        profile.html
        partials/
            header.html
            ...

grunt usemin:htmlタスクはビュー内のすべてを処理していますが、そのサブフォルダー内では処理していません。すなわち。パーシャル/*

これが私のうなり声の設定です:

...
useminPrepare: {
  html: '<%= yeoman.app %>/index.html',
  options: {
    dest: '<%= yeoman.dist %>'
  }
},
usemin: {
  html: ['<%= yeoman.dist %>/{,*/}*.html'],
  css: ['<%= yeoman.dist %>/styles/{,*/}*.css'],
  options: {
    dirs: ['<%= yeoman.dist %>']
  }
},
...

私が試したこと

これらのオプションを設定に追加しようとしましたusemin

options: {
    basedir: '<%= yeoman.dist %>',
    dirs: ['<%= yeoman.dist %>/**/*']
}

ただし、ビューのサブフォルダーは処理されません。

アップデート

jakerella の回答 noa のコメントのおかげで、次のことが機能しました。

usemin: {
  html: ['<%= yeoman.dist %>/{,*/}*.html', '<%= yeoman.dist %>/views/{,*/}*.html'],
  css: ['<%= yeoman.dist %>/styles/{,*/}*.css'],
  options: {
    dirs: ['<%= yeoman.dist %>']
  }
},
4

1 に答える 1

8

あなたは近いと思いますが、タスクのターゲットで**glob パターンを使用したいと思うでしょう:htmlusemin

usemin: {
    html: ['<%= yeoman.dist %>/**/*.html'],
    ...
}

また、そこにも が必要になる場合があります (ただし、タスクがそのオプションを使用するかどうかはわかりません) expand: trueusemin

于 2013-12-31T15:52:12.403 に答える