高手速來圍觀幫忙解惑~關于ASP.NET MVC Bundling and RequireJS的取舍問題,最近比較困惑,我希望有一種方式可以結合兩者的優(yōu)點。作為.NET程序員,難道你沒有過這方面的困惑嗎?

    因為我感覺各自都有優(yōu)缺點,RequireJS的缺點在于,在開發(fā)的時候,你不能引入壓縮后的js或者css,否則無法調(diào)試和修改,而Bundling的話debug模式默認情況下是不壓縮,你一發(fā)布到生產(chǎn)成release就自動壓縮,調(diào)試起來非常方便。RequireJS的優(yōu)點在于可以異步按需加載,還有就是模塊化js代碼,而Bundling 則是簡單粗暴的全部合并成一個文件進行加載,你看不出模塊化引用也實現(xiàn)不了按需加載, 那么在開發(fā)過程中作為.NET程序員是如何取舍的呢?能不能結合二者的優(yōu)點來使用呢?

    目標:在ASP.NET MVC項目中實現(xiàn)js和css的模塊化,并支持壓縮合并。

    如果你跟我說你還不知道RequireJS是個神馬冬冬?請移步至:http://requirejs.org/docs/api.html

    項目目錄結構沿用上一篇ASP.NET MVC 重寫RazorViewEngine實現(xiàn)多主題切換

方式一 Bunding+RequireJS混用

先來看看一個老外的做法,他大體上是這樣做的:

Bundling部分

App_Start/BundleConfig.cs:

bundles.Add(new ScriptBundle("~/bundles/test").Include(                   "~/Scripts/jquery-{version}.js",                   "~/Scripts/q.js",