mvc Bundling 學習記錄

2022-03-14 03:08:29 字數 1039 閱讀 1062

因為現在的專案js引用很多,無意中看到了mvc4的bundling,開始的時候感覺很不錯,將所有的css,js檔案壓縮成乙個檔案處理,畫面呼叫也很簡單

於是,花了乙個下午的時候研究了一下,並且通過各種情況進行測試

可是結果不盡如人意,其中有乙個比較很讓人抓狂的問題

經常做.net的人都知道,ui畫面會引用很多的外掛程式,比如easyui,ext等等,而這些外掛程式裡面包含了很多引用,因為呢,就涉及到乙個做web的常見難題:路徑(當然,如果所有的css檔案中路徑都是使用的絕對路徑或者專案絕對路徑,那就沒這個問題)

mvc4的bundling本應該是乙個很ok的功能,也是mvc4的亮點

但是累贅就是,被它壓縮過的css裡面的路徑,原來的相對於css檔案的引用路徑會變為虛擬路徑的相對路徑

比如:我們在專案中定義bundling的時候如下

bundles.add(new scriptbundle("~/content/css/infocss").include(

"~/content/skins/blue/css/iramecss/style.css",

"~/content/css/basecss/infoform.css"

));其中,("~/content/css/infocss")為虛擬路徑,被壓縮後的路徑,則不是按照我們定義的包含的css檔案的相對路徑,而是變成了虛擬路徑的相對路徑,這個時候,我們必須對每個css檔案考慮裡面的使用的路徑再設定虛擬路徑。因為我乙個畫面總共只需要呼叫三個css檔案,而且原本的路徑不一,所以感覺如果進行修改,得不償失

第二個問題,如果我的css檔案或者js檔案本身設定了引數,比如query.artdialog.js?skin=blue,原本的設計是根據這裡的skin引數,js引用不同的css檔案,如果使用bundling,則只能分開呼叫。

其他還有一些小的問題,因為時間關係,我也沒有進行繼續測試,在看其他博主進行使用bundling,好像提過,對於js帶.min的檔案,bundling不進行壓縮,而且檔案也不進行匯入。只能直接在ui畫面引用,而且就算改變了js檔名稱,將.min去掉,但是本身就是壓縮檔案,如果再進行壓縮,會不會有什麼問題呢?

mysql學習記錄 MySQL學習記錄 2

in 子查詢 select from student where id in 1,2 not in 不在其中 select from student where id not in 1,2 is null 是空 select from student where age is null is not...

java學習記錄

陣列雖然是引用資料型別,但它不是類 所以數字中沒有length 方法 只有length屬性。string型別 是乙個類 jdk中已經封裝好的類,是個final類,你可以去查api 類就有屬性和方法但是 string類中沒有length屬性,只有length 方法 1。陣列雖然是引用資料型別,但它不是...

Linux 學習記錄

1.linux 拷貝隱藏檔案 進入當前需要拷貝的目錄,即源目錄 假如 source 拷貝到 centos5.3 cd source tar cf cd centos5.3 tar xvf 或者 cp r centos5.3 2.linux 下新增postgresql 使用者 進入 postgresq...