2013-05-30 9 views
6

私のワークフローに関する意見を聞きたいだけです。私はYeomanを認識しており、意図的に使用しないことに決めました。私のワークフローは次のようになります。Bower and Gruntワークフロー

  1. bower installを実行して、すべてのプロジェクト資産の依存関係をインストールします。
  2. 実行すると、すべてのjsファイルがbowerコンポーネントフォルダから新しいjsフォルダにコピーされ、すべてのcssファイルが新しいcssフォルダにコピーされます。
  3. gruntタスクを使用して、新しいフォルダのすべてのjsファイルとcssファイルを連結して縮小し、distフォルダに配置します。
  4. 最終的に縮小されたHTMLのcssおよびjs distフォルダを参照してください。

私のしこりの仕事ではしたくないことは、依存関係固有のタスクを実行することです。ブートストラップフォルダからすべてのjsファイルを新しいjsフォルダに入れ、すべてのjsファイルをprettyphotoフォルダから新しいjsフォルダに入れます。私はgruntタスクができるだけ包括的で、bowerの依存関係がどのようなものであっても、どんなプロジェクトでも同じgruntfileを使用できるようにしたい。その理由は、私が各プロジェクトで自分のgruntfileを書くのに費やす必要がある場合、なぜ従来の方法ですべての依存関係のソースコードを取得するだけではないのでしょうか?

したがって、bowerのコンポーネントフォルダ内からすべてのjsファイルを取得するために、ある場所から別の場所にファイルをコピーするgrunt-contrib-copyプラグインがあります。問題は、大部分のBowerコンポーネントには通常のjsとそのミニバージョンが付属していることです。だから、私はそれらの両方をコピーし、それらを連結して醜いものにしています。だからコードを複製!

私のワークフローは意味がありますか?そうですね、上の段落で述べた問題をどうやって取り除くことができますか?

答えて

2

私が正しく理解している場合は、grunt-useminをご覧ください。あなたは<!-- build:js js/foo.js -->にjsタグをラップすることができます。パッケージに含まれているuseminPrepareタスクは、そこにあるスクリプト(またはCSSや画像など)を順番に調べ、concatまたはuglifyタスクに動的に追加します。

私が見つけた1つの欠点は、useminタスクがかなり遅いですが、うまくいけばthis pull requestが実装されていれば、はるかに速くなります。

+0

ありがとう、私はuseminとその偉大な試みました。唯一のことは、jsとcssファイルの復活バージョンは実際には作成されていません。これはWindowsマシンの既知の問題ですか?私は設定が間違っているのを見ない。 – Prashant

関連する問題