微軟在 Visual Studio 2022 中引入新的 Razor 編輯器
微軟宣布在 Visual Studio 2022 中引入新的 Razor 編輯器,開發(fā)者可以使用新的 Razor 編輯器通過 MVC、Razor Pages 和 Blazor 進行本地 ASP.NET Core 開發(fā)。
基于 ASP.NET 核心項目的新 Razor 編輯器已經(jīng)開發(fā)了相當一段時間,NET 的核心項目基于語言服務(wù)器協(xié)議(LSP),語言服務(wù)器協(xié)議(LSP)是一個開源協(xié)議,它定義了編輯器或IDE啟用特性的標準方式。LSP 模型能夠添加重要的新功能,為 Razor 帶來了更多 c# 的編輯特性,并加速了其他新的 Razor 特有的生產(chǎn)力改進。
特性
新的 Razor 編輯器模型更容易添加新的代碼修復(fù)和重構(gòu),加入了最常用的重構(gòu)和缺失的 using:
此外,還添加了一些特定于 Razor 開發(fā)的重構(gòu),這對于學習 Razor 的日常語法和公共元素至關(guān)重要。例如,提取塊后的代碼允許你提取整個代碼塊隱藏文件的編碼:
其他新的 Razor 重構(gòu)包括:為組件添加 usings、完全限定組件和創(chuàng)建組件。隨著 Razor 的發(fā)展未來還有更多計劃。
導航支持
Visual Studio 中最常用的導航特性之一是“轉(zhuǎn)到定義”(Go to Definition),定義組件幫助你快速瀏覽整個文件,更好地理解你的代碼。例如,在組件標簽上按F12 可以導航到組件代碼:
F5 按鍵可以召喚出一組診斷工具,其中包括熱重載這類尖端功能。
刪除了以前版本的代碼背景高亮顯示。這種背景高亮跟已選擇的代碼難以區(qū)分,視覺上太混亂。
新的 Razor 編輯器支持最新的編譯器功能,且正在完善現(xiàn)有的語法交互。現(xiàn)在支持更智能的 Razor 語法補全,例如 <text> 補全和自動補全。新編輯器還更改了診斷流程,確保僅顯示最重要的診斷,并以預(yù)期保真度顯示編譯器生成的診斷。 另外,Razor 現(xiàn)在完全支持 Visual Studio Live Share(Live Share 是跟其他開發(fā)人員進行遠程協(xié)作的工具,支持從 IDE 內(nèi)部共享代碼) 。
另外,Razor 編輯器是十年前推出的,只是老版本的 Razor 編輯器已積重難返,所以現(xiàn)在啟動新的 Razor 項目。新的 Razor 目標是融合老版本的優(yōu)秀功能,在此基礎(chǔ)上提高質(zhì)量和性能,這還有相當一段路要走,目前 Razor 團隊正在努力解決下列問題:
Snippets支持(使用Tab擴展)
換行 div 快捷鍵 Shift+Alt+W
Ctrl+鼠標單擊 可以跳轉(zhuǎn)到定義
#region 代碼折疊
嵌入式 JavaScript 格式
對 HTML、CSS 和 JavaScript 文件的拖放支持
性能和可靠性改進
在調(diào)試時對 Blazor Web Assembly 項目的熱加載支持
關(guān)于新 Razor 編輯器的路線圖,可以在 GitHub上查看。