0

MVC に含まれているバンドル ツールは十分ですか? それを使用しない大きな理由はありますか?

私はウェブフォームで squishIt を使用してきましたが、問題はありませんでした。しかし、今は MVC プロジェクトに参加しており、MVC には独自のバンドル機構があることがわかりました。代わりにそれを使用する必要がありますか?

縮小してgzipできますか?squishIt のように、マージされたファイルにハッシュを追加しますか? または、リリース時にファイルを一意にするための他の解決策はありますか?

または、他に使用するものはありますか?

4

2 に答える 2

0

出力の順序で本当に奇妙なことを発見しました。これらのファイルを使用しています:

       bundles.Add(new ScriptBundle("~/bundles/jquery").Include(
                "~/Content/Script/json2.js",
                "~/Content/Script/jquery-1.10.2.min.js",
                "~/Content/Script/jqueryMobileCustom.js",
                "~/Content/Script/jquery.mobile-1.3.2.min.js"));

次の出力は次のようになります。

    <script src="/Content/Script/jquery-1.10.2.min.js"></script>
    <script src="/Content/Script/json2.js"></script>
    <script src="/Content/Script/jqueryMobileCustom.js"></script>
    <script src="/Content/Script/jquery.mobile-1.3.2.min.js"></script>

それは間違っている!

しかし、「jquery-1.10.2.min.js」の名前を「jquery.1.10.2.min.js」に変更すると。それは正常に動作します。そして、好きなように注文します。

scriptbundle と include を使用するときにソートオーダーを無効にする方法があるかどうか知っていますか? または、なぜ ' ではなく ' - ' に反応するのでしょうか。' 私のファイルに。

「BundleFileSetOrdering」関数であることは知っていますが、インクルードで指定するのが好きです。

于 2013-09-20T09:44:14.163 に答える
0

あなたの質問に答えるために

  1. はい、縮小します / gzip
  2. はい、キャッシュを防ぐためにクエリ文字列を追加します
  3. そして (質問ではありませんが)、バンドルは Web フォームでも機能します

一番使いやすいと思うものを使用することをお勧めします。組み込みのバンドルは問題なく、使いやすく、デバッグ/ライブ展開に適した機能を備えています。

ミニファイヤは他のものほど効率的にミニファイしないことがわかりましたが、ファイルが提供されて.minいる場合はファイルを使用するため、これは通常問題ではありません。

バンドルにフォルダー内のすべてのスクリプトが含まれており、そのフォルダーに と があるとしjquery.1.10.2.jsますjquery.1.10.2.min.js。デバッグ モードでは縮小されていないファイルが使用さ.minれ、リリース モードではバージョンが使用されます。その後、.minファイルを削除すると、リリース モードでバンドルが少し大きくなる可能性がありますが、最終的な結果は依然として縮小されたバンドルになります。

ASP.NET バンドルに関する詳細情報

はい、 YUICompressorのような他のパッケージもあります。NuGetでそれらを検索できますが、私は常に組み込みのバンドルを使用しているため、それらがどれほど優れているかはわかりません。

于 2013-09-19T20:31:50.280 に答える