超碰人人人人人,亚洲AV午夜福利精品一区二区,亚洲欧美综合区丁香五月1区,日韩欧美亚洲系列

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發(fā)文檔 其他文檔  
 
網(wǎng)站管理員

WebOptimizer:輕松實現(xiàn) CSS 和 JavaScript 的壓縮與打包,全面提升 ASP.NET Core 性能

admin
2025年4月16日 9:7 本文熱度 252
對于前端性能優(yōu)化方法有很多,包括:圖片合并、使用緩存、使用CDN、減少重定向、減少請求、壓縮等等。今天就針對減少請求、資源壓縮,給大家推薦一個基于.Net開發(fā)的資源合并與壓縮的開源項目。

01
項目簡介
WebOptimizer 是一個專為 ASP.NET Core 設(shè)計的開源工具,用于在運行時對 CSS 和 JavaScript 文件進(jìn)行 打包(Bundling) 和 壓縮(Minification),從而提升 Web 應(yīng)用的性能。
它通過中間件的方式在服務(wù)器端處理靜態(tài)文件,支持緩存優(yōu)化和高度可擴(kuò)展的管道配置。
02
核心功能

  1. 壓縮(Minification)

    • 去除代碼中的多余字符(如空格、注釋等),減小文件大小。

    • 支持 JavaScript 和 CSS 文件的自動壓縮。

    • 使用 NUglify 作為壓縮引擎。

  2. 打包(Bundling)

    • 將多個文件合并為一個文件,減少 HTTP 請求。

    • 支持通過通配符(Globbing Patterns)指定文件路徑,方便批量處理。

  3. 緩存優(yōu)化

    • 提供服務(wù)器端和客戶端緩存支持。

    • 自動為文件添加版本參數(shù)(Cache Busting),確保瀏覽器緩存的正確性。

  4. Tag Helpers

    • 提供 Razor 文件中的 <script> 和 <link> 標(biāo)簽擴(kuò)展,支持緩存優(yōu)化和內(nèi)容內(nèi)聯(lián)。

    • 支持通過 inline 屬性將文件內(nèi)容直接嵌入 HTML 頁面。

  5. 插件擴(kuò)展

    • WebOptimizer.Sass:將 SCSS 文件編譯為 CSS。

    • WebOptimizer.TypeScript:將 TypeScript 編譯為 JavaScript。

    • WebOptimizer.AutoPrefixer:為 CSS 添加瀏覽器前綴。

    • 支持多種插件,例如:

    03
    使用入門

    1、安裝依賴庫

    dotnet add package LigerShark.WebOptimizer.Core

    2、配置中間件

    services.AddWebOptimizer();...
    app.UseWebOptimizer();app.UseStaticFiles();

    3、配置打包和壓縮,指定文件名或者使用通配符

    services.AddWebOptimizer(pipeline =>{    // 壓縮特定文件    pipeline.MinifyJsFiles("js/a.js", "js/b.js");    pipeline.MinifyCssFiles("css/**/*.css");
       // 打包文件    pipeline.AddCssBundle("/css/bundle.css", "css/*.css");    pipeline.AddJavaScriptBundle("/js/bundle.js", "js/*.js");});

    4、合并文件

    services.AddWebOptimizer(pipeline =>{    pipeline.AddCssBundle("/css/bundle.css", "css/a.css", "css/b.css");        pipeline.AddCssBundle("/css/bundle.css", "css/**/*.css");});

    5、指定文件夾

    默認(rèn)情況下,所有捆綁包源文件都與 Web Root( wwwroot )文件夾相關(guān),但您可以將其更改為與 Content Root 相關(guān)。
    創(chuàng)建一個位于內(nèi)容根目錄中名為 node_modules 的文件夾中的文件包:
    services.AddWebOptimizer(pipeline =>{    pipeline.AddCssBundle("/css/bundle.css", "node_modules/jquery/dist/*.js")            .UseContentRoot();});

    完全自定義的IFileProvider,您可以使用UseFileProvider管道方法。

    services.AddWebOptimizer(pipeline =>{    var provider = new Microsoft.Extensions.FileProviders.PhysicalFileProvider(@"C:\path\to\my\root\folder");    pipeline.AddJavaScriptBundle("/js/scripts.js", "a.js", "b.js")        .UseFileProvider(provider);});

    04

    項目地址
    https://github.com/ligershark/WebOptimizer?

    - End -


    該文章在 2025/4/17 11:41:45 編輯過
    關(guān)鍵字查詢
    相關(guān)文章
    正在查詢...
    點晴ERP是一款針對中小制造業(yè)的專業(yè)生產(chǎn)管理軟件系統(tǒng),系統(tǒng)成熟度和易用性得到了國內(nèi)大量中小企業(yè)的青睞。
    點晴PMS碼頭管理系統(tǒng)主要針對港口碼頭集裝箱與散貨日常運作、調(diào)度、堆場、車隊、財務(wù)費用、相關(guān)報表等業(yè)務(wù)管理,結(jié)合碼頭的業(yè)務(wù)特點,圍繞調(diào)度、堆場作業(yè)而開發(fā)的。集技術(shù)的先進(jìn)性、管理的有效性于一體,是物流碼頭及其他港口類企業(yè)的高效ERP管理信息系統(tǒng)。
    點晴WMS倉儲管理系統(tǒng)提供了貨物產(chǎn)品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質(zhì)期管理,貨位管理,庫位管理,生產(chǎn)管理,WMS管理系統(tǒng),標(biāo)簽打印,條形碼,二維碼管理,批號管理軟件。
    點晴免費OA是一款軟件和通用服務(wù)都免費,不限功能、不限時間、不限用戶的免費OA協(xié)同辦公管理系統(tǒng)。
    Copyright 2010-2025 ClickSun All Rights Reserved