私が取り組んでいる単一ページのアプリの場合、次の構造があります。
- 距離
- CSS
- js
- ライブラリ
- パーシャル
- index.html
- ソース
- CSS
- js
- ライブラリ
- ビュー
- パーシャル
- index.jade
ディレクトリdistは、プロジェクトを提供するために Express サーバーによって使用されます。distを消去し、 src/css、src/js、src/libをdistにコピーするための簡単なタスク ( grunt-contrib-clean、grunt-contrib-copyを使用) があります。
問題はsrc/viewsにあります。このディレクトリには、html ファイルにコンパイルする必要がある jade ファイルが含まれています。コンパイル後、それらをdistに入れます(distルートのindex.html、サブディレクトリとしてのパーシャル)。
現在、grunt-contrib-jadeタスクを使用して、jade ファイルをコンパイルおよびコピーしています。コンパイルされたhtmlファイルをソース管理に追加したくないので、それらをdistにコピーしたいと思います。しかし、すべての jade ファイルを指定する必要があるため、これは実際には機能しません (現在は数しかありませんが、それは大きくなります)。
jade: {
compile: {
options: {
pretty: true
},
files: {
// TODO make one line
'dist/index.html': ['src/views/index.jade'],
'dist/partials/banner.html': ['src/views/partials/banner.jade'],
'dist/partials/dashboard.html': ['src/views/partials/dashboard.jade'],
'dist/partials/navbar.html': ['src/views/partials/navbar.jade'],
'dist/partials/transfer.html': ['src/views/partials/transfer.jade']
}
}
},
ディレクトリフィルターで grunt-contrib-jade タスク (または別のタスク) を使用する方法はありますか? このような:
jade: {
compile: {
options: {
pretty: true
},
dir: {
'dist': ['src/views']
}
}
}