10 個你可能還不知道 VS Code 使用技巧

經常幫一些同學 One-on-One 地解決問題,在看部分同學使用 VS Code 的時候,有些蹩腳,實際上一些有用的技巧能夠提高我們的日常工作效率。

NO.1

一、重構代碼

VS Code 提供了一些快速重構代碼的操作,例如:

將一整段代碼提取為函數:選擇要提取的源代碼片段,然后單擊做成槽中的燈泡查看可用的重構操作。代碼片段可以被提取到一個新方法中,或者在不同的范圍內(當前閉包、當前函數內、當前類中、當前文件內)提取到一個新函數中。在提取重構期間,VS Code 會引導為該函數進行命名。

將表達式提取到常量:為當前選定的表達式創建新的常量。

移動到新的文件:將指定的函數移動到新的文件,VS Code 將自動命名并創建文件,且在當前文件內引入新的文件。

轉換導出方式export const name?或者?export default

合并參數:將函數的多個參數合并為單個對象參數:

參考:?重構操作(https://code.visualstudio.com/docs/editor/refactoring)、JS/TS 重構操作(https://code.visualstudio.com/Docs/languages/typescript#_refactoring)

NO.2

二、自定義視圖布局

VS Code 的布局系統非常靈活,可以在工作臺上的活動欄、面板中移動視圖。

參考:重新排列視圖(https://code.visualstudio.com/updates/v1_45?ref=codebldr#_dynamic-view-icons-and-titles)

NO.3

三、快速調試代碼

在 VS Code 內調試 JS/TS 代碼非常簡單,只需要使用?Debug: Open Link?命令即可。這在調試前端或 Node 項目時非常有用,這類型的項目通常會啟動一個本地服務,這時候只需要將本地服務地址填寫到?Debug: Open Link?輸入框中即可。

參考:Debug(https://code.visualstudio.com/docs/editor/debugging)

NO.4

四、查看和更新符號的引用

查看符號的引用、快速修改引用的上下文:例如,快速預覽某個函數在哪些地方被調用了及其調用時上下文,還可以在預覽視圖中更新調用上下文的代碼。

重命名符號及其引用:接著上面的例子,如果想更新函數名以及所有調用,怎么實現?按?F2?鍵,然后鍵入所需的新名稱,再按?Enter?鍵進行提交。符號的所有引用都將被重命名,該操作還是跨文件的。

參考:Peek(https://code.visualstudio.com/docs/editor/editingevolved#_peek)、Rename Symbol(https://code.visualstudio.com/docs/editor/editingevolved#_rename-symbol)

NO.5

五、符號導航

在查看一個長文件的時候,代碼定位會是非常痛苦的事情。一些開發者會使用 VS Code 的小地圖,但其實還有更便捷的方法:可以使用???O?快捷鍵喚起符號導航面板,在當前編輯的文件中通過符號快速定位代碼。在輸入框中鍵入字符可以進行篩選,在列表中通過箭頭來進行上下導航。這種方式對于 Markdown 文件也非常友好,可以通過標題來快速導航。

參考:Go to Symbol(https://code.visualstudio.com/docs/editor/editingevolved#_go-to-symbol)

NO.6

六、拆分編輯器

當對內容特別多的文件進行編輯的時候,經常需要在上下文中進行切換,這時候可以通過拆分編輯器來使用兩個編輯器更新同一個文件:按下快捷鍵??\?將活動編輯器拆分為兩個。

可以繼續無盡地拆分編輯器,通過拖拽編輯器組的方式排列編輯器視圖。

參考:Side by side editing(https://code.visualstudio.com/docs/getstarted/userinterface#_side-by-side-editing)

NO.7

七、重命名終端

VS Code 提供了集成終端,可以很方便地快速執行命令行任務。用得多了經常會打開多個終端,這時候給終端命名可以提高終端定位的效率。

參考:Rename terminal sessions(https://code.visualstudio.com/docs/editor/integrated-terminal#_rename-terminal-sessions)

NO.8

八、Git 操作

VS Code 內置了 Git 源代碼管理功能,提供了一些便捷的 Git 操作方式。例如:

解決沖突:VS Code 會識別合并沖突,沖突的差異會被突出顯示,并且提供了內聯的操作來解決沖突。

暫存或撤銷選擇的代碼行:在編輯器內可以針對選擇的行來撤銷修改、暫存修改、撤銷暫存。

參考:Using Version Control in VS Code(https://code.visualstudio.com/docs/editor/versioncontrol)

NO.9

九、搜索結果快照

VS Code 提供了跨文件搜索功能,搜索結果快照可以提供更多的搜索結果的信息,例如代碼所在行碼、搜索關鍵字的上下文,并且可以對搜索結果進行編輯和保存。

參考:Search Editors(https://code.visualstudio.com/updates/v143#search-editors)

NO.10

十、可視化搭建頁面

在 VS Code 中可以通過可視化搭建的方式生成 Web 頁面,這是通過安裝 VS Code 的?Iceworks(https://marketplace.visualstudio.com/items?itemName=iceworks-team.iceworks)?插件實現的。安裝插件后,通過???P?喚起命名面板,在命令面板中輸入『可視化搭建』即可喚起可視化搭建界面,在界面內通過選擇網頁元素、進行拖拽布局、設置元素樣式和屬性來搭建頁面,最后點擊『生成代碼』就可以生成 React 代碼。

參考:Iceworks 可視化搭建(https://ice.work/docs/iceworks/guide/visual-construction)

推薦閱讀

我在阿里招前端,我該怎么幫你?(文末有福利)
如何拿下阿里巴巴 P6 的前端 Offer
如何準備阿里P6/P7前端面試--項目經歷準備篇
大廠面試官常問的亮點,該如何做出?
如何從初級到專家(P4-P7)打破成長瓶頸和有效突破
若川知乎問答:2年前端經驗,做的項目沒什么技術含量,怎么辦?

末尾

你好,我是若川,江湖人稱菜如若川,歷時一年只寫了一個學習源碼整體架構系列~(點擊藍字了解我)

  1. 關注我的公眾號若川視野,回復"pdf" 領取前端優質書籍pdf

  2. 我的博客地址:https://lxchuan12.gitee.io?歡迎收藏

  3. 覺得文章不錯,可以點個在看呀^_^另外歡迎留言交流~

小提醒:若川視野公眾號面試、源碼等文章合集在菜單欄中間【源碼精選】按鈕,歡迎點擊閱讀

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/276423.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/276423.shtml
英文地址,請注明出處:http://en.pswp.cn/news/276423.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

使用MAP文件快速定位程序崩潰代碼行(轉)

作為程序員,平時最擔心見到的事情就是程序發生了崩潰,無論是指針越界還是非法操作,都將給我們的應用系統造成巨大的損失。但在一個大型系統的測試過程中,初期出現程序崩潰似乎成了不可避免的事。其實測試中出現程序崩潰并不可怕&a…

構建安全的Xml Web Service系列之如何察看SoapMessage

上一篇文章地址:構建安全的Xml Web Service系列一之初探使用Soap頭 (5-22 12:53) 要分析Xml Web Service的安全性,首先要解決的問題是我們能了解和清楚Soap消息的格式和內容,如果獲得不了SoapMessage,分析如何能構建安全Xml w…

前端高效開發必備的 js 庫梳理

之前有很多人問學好前端需要學習哪些 js 庫, 主流框架應該學 vue 還是 react ? 針對這些問題, 筆者來說說自己的看法和學習總結.首先我覺得在學習任何知識之前必須要有一個明確的學習目標, 知道自己為什么要學它, 而不是看網上說的一股腦的給你灌輸各種知識, 讓你學習各種庫, …

交叉報表crosstab隱藏列名顯示_SAP軟件 報表查詢之 輸出格式設置

SAP不僅是功能強大、邏輯嚴謹的ERP軟件,還提供了強大的報表查詢功能。SAP的ALV報表展示功能是SAP的一大特點,實現了類似于EXCEL的功能。使用好ALV報表功能可以方便用戶從SAP中取到想要的數據,尤其是財務用戶。大家在使用SAP報表時&#xff0c…

CSS HACK 區別 IE6、IE7、IE8、Firefox兼容性

轉載鏈接:http://developer.51cto.com/art/201009/226787_1.htm 本文向大家描述一下如何使用CSS HACK區別IE6、IE7、IE8、Firefox兼容性問題,針對不同的瀏覽器寫不同的CSS code的過程,就叫CSS hack,也叫寫CSS hack,相信你對本文介…

Flex sdk4 布局與更新

在flex中,主要使用LayoutManager來驅動組件的度量和布局策略, LayoutManager實現一個單例,在Application類構造函數中創建: 1 public functionApplication()2 {3 UIComponentGlobals.layoutManager ILayoutManager(4 Singleton.getInstance("mx.managers::ILayoutManager&…

linux PROC文件系統詳解

/proc文件系統下的多種文件提供的系統信息不是針對某個特定進程的,而是能夠在整個系統范圍的上下文中使用。可以使用的文件隨系統配置的變化而變化。命令procinfo能夠顯示基于其中某些文件的多種系統信息。以下詳細描述/proc下的文件。----------------------------…

seo每日一貼_白楊SEO:我看ZAC的外貿SEO應該怎樣做?(策略篇)

前言:這是白楊SEO公眾號更新第64篇。本該寫寫頭條SEO啥的,最近在師徒培訓講站內SEO時有旁聽同學提到后面講講谷歌SEO怎么樣,因為谷歌全世界搜索市場占有率,所以外貿SEO最主要還是做谷歌SEO。以白楊特意又去了前輩ZAC的SEO每日一貼…

Can't connect to local MySQL server through socket '/tmp/mysql.sock'

轉載鏈接:http://blog.csdn.net/ixidof/article/details/5958904 摘要:解決不能通過mysql .sock連接MySQL問題 這個問題主要提示是,不能通過 /tmp/mysql .sock連到服務器,而php標準配置正是用過/tmp/mysql .sock,但是…

[轉]網頁柵格系統研究(2):蛋糕的切法

[出自]http://lifesinger.org/blog/2008/10/grid-system-2/首先澄清一個應用場景問題。研究(1)中指出,對于結構復雜的網站,不少設計師們喜歡采用960固定寬度布局。但要注意的是,960并不是萬能鑰匙,大部分網…

Vue3響應式原理

關注若川視野,回復"pdf" 領取資料,回復"加群",可加群長期交流學習本文結構- 關于Vue3- Vue2響應式原理回顧- Vue3響應式方案- Vue3響應式原理- 手寫mini版Vue3響應式本文共計:2349字2圖預計閱讀時間&#xff…

python二值化 感興趣區域_Python+OpenCV感興趣區域ROI提取方法

方法一:使用輪廓步驟1"""src為原圖"""ROI np.zeros(src.shape, np.uint8) #感興趣區域ROIproimage src.copy() #復制原圖"""提取輪廓"""proimagecv2.cvtColor(proimage,cv2.COLOR_BGR2GRAY) #轉換成…

error while loading shared libraries: libmysqlclient.so.16: cannot open

轉載鏈接:http://blog.sina.com.cn/s/blog_4ab24dd50100wnkv.html 問題解決辦法: locate libmysqlclient.so.16 如我的mysql安裝在/usr/local/mysql下,則結果為 /usr/local/mysql/lib/mysql/libmysqlclient.so.16 vi /etc/ld.so.conf 增…

編譯cvaux錯誤的原因

平臺vc6.0;在debug模式下編譯cvaux時會提示三個錯誤:error C2039: foreground_regions : is not a member of CvFGDStatModelerror C2039: foreground_regions : is not a member of CvFGDStatModelerror C2039: foreground_regions : is not a member of CvGaussBG…

找準切入點,調試看源碼,事半功倍

關注若川視野,回復"pdf" 領取資料,回復"加群",可加群長期交流學習最近寫了很多源碼分析相關的文章,React、Vue 都有,想把我閱讀源碼的一些心得分享給大家。React:React 架構的演變 - 從…

Android布局大全

Android的界面是有布局和組件協同完成的,布局好比是建筑里的框架,而組件則相當于建筑里的磚瓦。組件按照布局的要求依次排列,就組成了用戶所看見的界面。 所有的布局方式都可以歸類為ViewGroup的5個類別,即ViewGroup的5個直接子類…

java實現加減乘除運算符隨機生成十道題并判斷對錯_2020年Java面試題(3年的工作總結),最全的知識點總結...

這份Java面試題整整花了三個月的時間來整理,都是自己再工作中總結出來,記住多少就寫多少,希望這份資料可以幫助你們,文末有其余部分資料的領取方式.Redis12道面試題1.什么是Redis?答:Remote Dictionary Ser…

Linux MySQL 5.1.62 source install

源碼包官網下載:http://dev.mysql.com/downloads/ MySQL手冊官網下載:http://dev.mysql.com/doc/ 安裝ncurses: 1、tar -zxvf ncurses-5.9.tar.gz 2、cd ncurses-5.9.tar.gz ; ./configure; make clean; make; make install 修改時區…

RDLC 示例 文章 1

GotReportViewer的實例,請在下面的連接中下載: http://files.cnblogs.com/waxdoll/RDLC.rar http://www.databasejournal.com/features/mssql/article.php/3605826/Mastering-OLAP-Reporting--Reporting-with-Analysis-Services-KPIs.htm MSSQL Server …

.NET 中的泛型 101

1.1.1 摘要 圖1 C# 泛型介紹 在接觸泛型之前,我們編程一般都是使用具體類型(char, int, string等)或自定義類型來定義我們變量,如果我們有一個功能很強的接口,而且我們想把它提取或重構成一個通用的接口,使…