1. 程式人生 > >asp.net core合並壓縮資源文件(轉載)

asp.net core合並壓縮資源文件(轉載)

eve 名稱 鏈接 tails 合並 net div spn docs

在asp.net core中使用BuildBundlerMinifier合並壓縮資源文件


在asp.net mvc中可以使用Bundle來壓縮合並css,js 不知道的見:http://www.cnblogs.com/morang/p/7207176.html
在asp.net core中則可以使用BuildBundlerMinifier來進行css,js的壓縮合並
新建一個core項目可以看到一個根目錄下面有一個bundleconfig.json配置文件,看名字大概也猜到了幾分,點開json文件中的鏈接,果然就是它~
官方文檔地址:https://docs.microsoft.com/zh-cn/aspnet/core/client-side/bundling-and-minification

好的。接下來跟著文檔試試看

在vs中下載安裝擴展


技術分享圖片

使用NuGet安裝 BuildBundlerMinifier


  • 使用命令dotnet add package BuildBundlerMinifier 或者 NuGet包管理器安裝完畢
  • 重新生成項目
  • yes,成功,整個配置文件的配置一看就能明白:結合圖看配置就知道是將inputFiles配置的條目資源壓縮合並成outputFileName的資源

技術分享圖片

這裏再展示下bundleconfig.json文件的格式樣例:
[
  {
    // 要輸出的捆綁文件名稱。 可以包含中的相對路徑bundleconfig.json文件。 必填
    "outputFileName": "wwwroot/build/xxx.xxx.com/min.css",
    // 要將捆綁在一起的文件的數組。 這些是配置文件的相對路徑。 可選,* 空值會在空的輸出文件。 組合支持模式。
    "inputFiles": [
      "wwwroot/bootstrap/bootstrap.css"
    ]
  },
  {
    "outputFileName": "wwwroot/build/xxx.xxx.com/min.js",
    "inputFiles": [
      "wwwroot/jquery/jquery.min.js",
      "wwwroot/knockout/knockout-3.4.2.js"
    ],
    // "輸出類型縮減選項。
    // "可選,默認值-minify": { "enabled": true },
    "minify": {
      "enabled": true,
      "renameLocals": true
    },
    //  指示是否生成捆綁的文件的源映射的標誌。 可選,默認-false
    "sourceMap": true,
    // "指示是否將生成的文件添加到項目文件的標誌。" "可選,默認-false",
    "includeInProject": true
    // 用於存儲生成的源代碼映射文件的根路徑。
    //"sourceMapRootPath": ""
  }
]

參數說明
-outputFileName:要輸出的壓縮文件的相對路徑。 -必填 -inputFiles:要輸出的壓縮文件的相對路徑。 - 可選,為空則輸出空文件
- 空值會在空的輸出文件。 支持組合模式 - 組合模式 例子:"inputFiles": ["wwwroot/**/*(*.css|!(*.min.css)"] 將獲取所有 CSS 文件,不包括縮減的文件模式。 -minify:壓縮選項的配置 - 默認啟用壓縮,更多配置見BundlerMinifier-Wiki - 可選 -includeInProject:將生成的文件添加到項目文件 (默認的文件中也沒有這個選項) - 文檔寫的是 默認false,在vs中轉到定義查看是true 。囧,默認是沒有這個參數的 -sourceMaps:生成捆綁的文件的源映射 -默認false 根據不同環境使用不同的css/js

使用新增的environment標簽去根據不同的環境引入不同的css文件 技術分享圖片 ok,可以的,那麽問題來了
asp.net core的Development,Staging,Production這幾個環境變量在哪裏配置呢? 三個環境分別對應 開發 測試 生成,詳情見文檔(劃重點):https://docs.microsoft.com/zh-cn/aspnet/core/fundamentals/environments
簡單描述之:項目右鍵->屬性->調試->環境變量->>>一張圖說明 技術分享圖片 然後發現原來調試信息什麽的都是放到launchSettings.json中~
將環境變量ASPNETCORE_ENVIRONMENT的值修改為Production後,運行起來,總算完成了

原文鏈接

asp.net core合並壓縮資源文件(轉載)