Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537
文共3530字,預計學習時長13分鐘
圖源:unsplash
市場營銷最強策略之一:在人們知道自己需要什么之前幫助他們意識到自己需要什么。這一點上,VSCode深諳其道。
VSCode可能是目前最為流行的代碼編輯器,就是因為它滿足了每一個開發人員的需求,甚至可能開發人員自己都不清楚的需求。這就是VSCode的獨特魅力。
VSCode是為現代技術而創建的,因而大多數VSCode愛好者都是JavaScript開發人員。目前流行的JavaScript框架對于VSCode來說早已完美無缺,它擁有你所需要的一切。
科技日新月異,選擇文本編輯器時,一定要選最新最好的。優秀的開發人員不能不舍得花時間。但這并不是說應該轉而學習另一種語言,或者另一個框架。
正如筆者在之前的博客中一直強調的那樣,開發人員應當追上潮流,保持敏銳,了解最新信息,并將它們與目前使用的工具進行比較,了解其中區別及其優缺點,觀察其支撐和在社區中的發展,穩定至關重要。這會大大提升你的工作效率。
圖源:unsplash
VSCode擁有一個龐大的開源社區,其發展和潛力是無限的,本文將為你介紹25個最佳的VSCode擴展。
1.Auto-CloseTag
擁有VCSCode擴展是必要的。編寫代碼本就困難重重,擁有了VSCode擴展,就不需要僅僅因為缺少關閉標記(<div></div>)而查找錯誤。
VSCode擴展可以自動添加剛剛添加的起始標簽的右括號,然后將鼠標光標放在標簽之間。是不是很酷?
2.VisualCode Integrated Terminal
將命令/終端放在VSCode編輯器中不僅會使工作更為輕松,還能節省空間。有了VSCode,你的終端就派上用場了。
3.ESLint/TSLint
此擴展的主要功能是自動格式化代碼,以便在整個團隊中實現一致的格式化。ESLint也可以配置為自動格式化代碼,無論何時出現錯誤,它都會發出一連串的警告。
數百萬的下載量可不是白給的~
4.CodeSpell Checker
如若不是以英語為母語的人,甚至可能也不是第二語言,那么Code Spell Checker對避免代碼出現拼寫錯誤非常有幫助。無論是否能說一口流利的英語,打字錯誤是不可避免的——人們不會想花時間去找錯字,尤其在面對長代碼時。
5.Settings Sync
使用多臺機器時,該擴展將大有幫助。Settings sync讓所有電腦/筆記本電腦依照visual studio的設置方式實現同步。
同時在辦公室電腦和家用電腦上工作的開發人員,基本上會在不同的地點工作。手動更改兩端設置極為耗時,因為需要根據正在做的項目不時更改設置以便緩解編程壓力。建議使用這個擴展,以便將所有所作更改都自動同步到個人電腦和工作點。
6.Bracket Pair Colorizer
括號可謂是痛苦之來源,尤其是在處理大型項目時。當使用長代碼時,情況會更糟。Bracket Pair Colorizer將有效緩解這種壓力。
由于有大量嵌套的長代碼,尤其是在使用Javascript時,幾乎不可能確定哪些括號相互匹配。這一工具有助于更容易地找到打開和關閉,用顏色標識括號對將使代碼更具可讀性。趕緊下載吧!
7.Prettier
此前提到了ESLint,它可以自動格式化連續的代碼,并顯示警告和錯誤。
作為React/Native的開發人員,保持代碼整齊干凈是必要的。首要的一點就是正確地縮進和分隔以便更好地讀取代碼,特別是在處理編寫已久的代碼時——帶有樣式、函數和處理程序的分隔非常重要,不僅方便自己,也方便了同事。要設置很簡單,點擊保存時即可自動格式化。
8.PathIntellisense
該擴展是筆者常用VSCode擴展之一。它可以節省很多時間。作為一名前端開發人員,筆者時常健忘,但又需要用到大量的組件、擴展和安裝包,特別是在使用React格式化時,因此,需要一些有助于處理文件路徑的東西。
大型項目中的工作麻煩多多,pathIntellisense將是你的左臂右膀。當嘗試在引文中輸入一條路徑時,智能感知會自動填寫或顯示建議。路徑智能感知還可以幫助自動完成所有隱藏文件。
9.BrowserPreview
該擴展對于前端開發人員而言必不可少。與其在Chrome中打開另一個窗口來瀏覽在代碼中所做的更改,不如下載這個瀏覽器進行預覽,這樣在VSCod中即可完成所有的工作。
該擴展可顯示代碼的瀏覽器預覽,因此不必在瀏覽器上打開標簽就可以看到一些小改動,大大了節省時間和空間。
10.Debuggerfor Chrome
這是筆者最愛和使用最多的VSCode擴展。作為一個前端網頁移動開發者,Debugger for Chrome為筆者提供了很大的幫助。特別是對于JavaScript開發人員來說,它可以節省很多做小改動的時間,有助于快速地找到并解決bug,對調試非常有幫助。
想要查找錯誤來自哪些行和函數,甚至查看其數據處理,控制臺可以提供很大的幫助。
11.MaterialIcon Theme
通過該擴展可為文件列表選擇漂亮可愛的圖標。如果文件是JavaScript,那么在文件名旁邊的material樣式中會有一個JavaScript圖標。若是從事視覺開發,那么該擴展就再適合不過了。
12.Javascript (ES6) Code Snippets
若你是JavaScript開發人員,Javascript (ES6) Code Snippets將是你最好的幫手。無論使用什么JavaScript框架,此擴展都將有所幫助。如果只是一遍又一遍地輸入相同的通用代碼,效果倒不是很明顯。
該代碼片段十分方便,是一個輕量級的庫擴展,它可以綁定任何標準的JavaScript調用,因此只需鍵入快捷代碼,即可看到整個通用代碼自動輸入到編輯器中。該擴展不僅支持Javascript ES6,還支持Typescript、Reactjs、Vue和HTML。
13.LiveServer
在使用Live Server時,該VSCode擴展將有助于打開當前項目的Live web服務器。一般這項工作用像Webpack這樣的構建器完成即可,但是該擴展顯然更為有效。只需右擊并打開運行live server,便會自動完成剩余的工作。
14.Github 擴展
若正在使用Github作為項目存儲庫,或者希望使用其他開發人員的源代碼存儲庫,那么這個擴展就是為您量身定做。
順便一提,Github現在由微軟所有和管理,所以Github和VSCode現在都是微軟產品之一。
使用Github擴展,可以輕松地連接其他開發人員的存儲庫、喜歡的開發人員的存儲庫,甚至自己的存儲庫。經常使用Github的話,切換存儲庫將極為順手。
15.GitLens
Gitlens是另一個好用的擴展。它擴充了當前的VSCode Git功能,能夠從以前所作的提交和更改中同時執行代碼比較,還擁有其他一些很厲害的特性。
16.NPM
所有現代開發人員都知道NPM是什么,以及它為什么這么重要。Node包管理器是一個可管理Package .json文件的擴展。如果需要的依賴項以及NPM包的版本控制尚未安裝,它會給出警告。
筆者所處理的大多數bug和錯誤都來自于使用的NPM包、函數和特性,因為它們與其他包不兼容,所以無法運行。如果沒有它所要求的依賴項沒有兼容的版本那可真是鴨梨山大!
17.Beautify
Beautify是另一用于代碼格式化的良好擴展,與前文提到的Prettier幾乎一樣,但是效果更漂亮。到目前為止,它已有將近1200萬的下載量了,還用筆者再多說什么嗎。它可以格式化用Javascript、JSON、Sass、CSS和HTML編寫的代碼。
18.Live Sass Compiler
如果您喜好Sass風格,或者只是因為它是項目應用程序需求的一部分而恰好正在使用Sass,那么這個VSCode擴展就是為您而生的!
它會實時將SASS/SCSS文件編譯成CSS文件,并自動提供應用程序或瀏覽器中已編譯樣式的實時預覽。
19.Emmet
自筆者開始使用VSCode以來,就一直在使用Emmet。它可以幫助開發人員提高編寫代碼的速度。使用該擴展不久之后就再也離不開它了。
20.VSCode Icons
這是為前端開發人員打造的VSCode擴展。與前文提到的material圖標很相似,但是設計不同。前端開發人員通常都喜歡可視化,對吧。這個圖標有助于查看文件類型,不管它們是HTML,CSS, Javascript還是其他類型。
21.顏色選擇器
顏色選擇器擴展有助于輕松選擇CSS文件中的顏色。它將立即反映或應用到當前正在處理的屬性。若喜歡使用RGBA顏色,也可以使用。
22.Quokka
Quokka被稱為JavaScript開發人員的現代便簽板。其構建旨在幫助開發人員進行代碼檢查。這是一個完美的解決方案。
與其他VSCode擴展相比,它非常輕量級、高效且強大,有助于加快工作進程。同時,它又是實時的,可以給出即時反饋。
它可以為每個結果匹配一個固定的顏色類型,以便開發人員更容易理解代碼。
23.Live Share
Live Share是VSCode文本編輯器中最先進的特性之一。當與團隊成員一起工作時,它無可挑剔。LiveShare的功能之一是允許每個開發人員實時地與其他開發人員共享代碼片段。
這一點堪稱完美,且有助于實現更加高效和多產團隊協作。LiveShare允許即時共享當前的項目,即使在調試時也是如此。
協作者不需要安裝任何存儲庫、sdk或任何東西來連接其他開發人員的當前代碼。團隊中的每個人都可以通過協作來遠程探索和修復問題。
24.ES7, React, Redux & GraphQL Snippets
高級開發人員目前使用的多是JavaScript框架(如React),以及其他與生產和復雜應用程序兼容的技術,這項擴展是為他們量身定做的。
反復輸入標準代碼效率低下。在該代碼片段的幫助下,可以輕松創建基于類的組件、功能組件、輸入項、生命周期方法等,只需鍵入快捷代碼,這是筆者使用最多的擴展之一,因為筆者一直使用的是Reactjs和React Native。
25.REST 客戶端
另一個高級工具是Rest客戶端擴展,在使用其他第三方工具和APIs時,它將大有幫助。另外也有助于輕松發出HTTP請求。
通過此擴展可輕松地在代碼編輯器中直接調用和結束,大大節省了時間——你可以使用這個方法,而不是只為實現一個請求而來回切換瀏覽器或郵箱。
圖源:unsplash
無論是追求高效,還是尋求體驗,在這里你都將找到滿意的答案。
留言點贊關注
我們一起分享AI學習與發展的干貨
如轉載,請后臺留言,遵守轉載規范
著2019年的到來,Stack Overflow對2018年的IT生態調查顯示:Visual Studio Code超過Visual Studio一躍成為榜首,成為“最受歡迎的開發環境”,沒有之一!
VScode的免費,開源,輕量,快速,強大,智能提示已經讓它火遍了全球,今天就來讓我們來學習一下VScode的八個提升開發效率的小貼士,讓你的開發效率up up up!
1. 按下ctrl+K,再按下ctrl+S,查看快捷鍵列表。
如果你想查看某個操作的快捷鍵,你并不用去看官方文檔,只需要調出快捷鍵列表,在上方搜索欄搜索你想要的操作,即可獲知對應的快捷鍵組合。
2. 按下ctrl+P,彈出搜索欄,直接輸入關鍵字,在所有文件中搜索特定符號:
在所有文件內搜索"employee"關鍵字
在搜索欄前輸入”@“,在當前文件中搜索特定符號:
在當前打開文件中搜索”employee“關鍵字
在搜索欄前輸入”>“,搜索所有可使用的命令 比如我想使用spring initializr擴展的命令, 創建一個Maven工程:
搜索”spring initializr:Generate a Maven Project”命令
3. 在閱讀代碼的時候,常常需要在不同的文件間切換,這時會出現“看了這個忘了那個”的現象,我們可以在插件市場中下載Bookmarks插件,助你更快標記、尋找某塊代碼。
運用第二條的知識,ctrl+P,再輸入">",輸入插件名,查看該插件的命令:
標記圖中36-38行代碼
選擇命令Toggle Labeled(標記并給該標記命名),為其命名“getId”后,當我們在別的文件中時,我們可以直接搜索該標簽,跳轉至標記處~
選擇Bookmarks:List from All Files 陳列出你的標簽
看到了我們剛才標記的代碼塊~Enter鍵直接跳轉~
4. 對某個函數或變量,右鍵點擊,在不移動目前代碼位置的前提下,查看其定義和引用。
右鍵,點擊peek definition
彈出該屬性的定義
同理,還可以看這個函數或變量在哪里被引用:選擇”peek reference“
查看變量的引用位置
彈出變量的引用位置
5. 通過ctrl+=和ctrl+-組合來進行縮放。
當你覺得現在的字體有點小,看不清,或者有點大,你不必去在設置菜單欄里面繞個暈頭轉向,你只需用如上兩個組合鍵來進行縮放即可。
放大
縮小
6. 使用Paste Json As Code擴展,將復制黏貼來的json文件直接序列化成代碼。
舉例:
將如下json文件:
json文件
序列化為Java代碼:
直接打開命令板,輸入Paste Json As Code的命令即可,十分方便。
7. 使用安裝量高達一千兩百萬的Gitlens擴展,助你更好地進行代碼合作,查看代碼更改歷史。
結合GitLens,你從github上clone下來的代碼上就會出現代碼作者,代碼commit的具體時間:
可以看到作者Greg Turnquist在三件前對改代碼做了commit
點擊右上角新出現的“Toggle File Blame Annotation”按鈕,對比展示你的代碼與原repo的區別:
點擊改圖標
查看你更改后的與原版本代碼的區別
分割線左側是原repo,右側是我們更改后的代碼,我們可以看到具體的代碼作者和commit時間。
在左側的action bar中,新出現了GitLens的圖標,點擊后,詳細查看branch,master,commit的信息:
可以看到當前repo的整個commit歷史,作者的github頭像也能看到,點擊某個修改歷史,直接就可以看到該修改和修改前代碼的所有區別。
8. 壓軸出場:微軟主打的革命性開發擴展:VS Live Share,在這個擴展的加持下,你可以和你的同事完成真正的遠程實時代碼協同開發,對方并不需要將整個工程clone下來,只需要連接到你開的session,你和他就可以對一個文件進行開發,修改。
Visual Studio Live Share enables you to collaboratively edit and debug with others in real time, regardless what programming languages you're using or app types you're building. It allows you to instantly (and securely) share your current project, and then as needed, share debugging sessions, terminal instances, localhost web apps, voice calls, and more! Developers that join your sessions recieve all of their editor context from your environment (e.g. language services, debugging), which ensures they can start productively collaborating immediately, without needing to clone any repos or install any SDKs.
VS live share 讓你可以實時與你的合作者協同編輯,調試代碼,不管你是在使用何種語言,開發何種應用。它讓你可以實時并安全地分享你的當前工程,并且如果需要,甚至可以分享調試會議,命令行示例,本地web應用,語音通話,甚至更多!參加會議的開發者可以從你的環境中接收到所有的編輯內容(比如語言服務,調試),確保參會者可以高效合作,無需克隆項目代碼并安裝開發包。
使用起來很容易,安裝該擴展:
enable該擴展,reload你的VScode,然后看到左下角的Live Share圖標:
跳轉至瀏覽器頁面:
使用我們的GitHub賬號登陸(也可以用微軟賬號)。
隨后回到我們的VS live share界面中,可以看到:
實時代碼沙龍
只有我一個人,那如何讓別人也參與進來呢?
點擊該圖標
每一個舉辦的實時代碼會議,都有一個網址,也就是url地址,點擊這個按鈕,該地址會自動進入你的剪貼板中,你只需把這個url發送給你的同事,你的同事在瀏覽器中進入這個網址:
可以看到這個代碼實時會議是我開的,然后直接點擊自動彈出的Open Live Share for VS Code,你的VScode就會自動啟動,打開之后,你已經進入了該代碼實時會議,可以和大家開始共享整個工程,甚至可以用voice call和他們實時語音交流,共同享受代碼協作開發的樂趣。
原文地址:https://zhuanlan.zhihu.com/p/54164612
sCode自從誕生以來,以其各自優異的特性迅速走紅。尤其是對于前端開發小伙伴來說,幾乎成為必不可少的開發工具。所以,熟練掌握VsCode的各自使用技巧與調試技巧會讓你的日常開發工作效率倍增。本文將會以大量圖文的方式,從下面幾個方面詳細介紹VsCode的各種技巧:
VsCode安裝后,會自動寫入環境變量,終端輸入code即可喚起VsCode應用程序。
在配置文件中添加如下配置,可以增加字符數標尺輔助線
"editor.rulers": [40, 80, 100]
下面以在VsCode中快速調試一個Node項目為例,演示斷點的基本使用。后文會繼續結束各種高級斷點。
program字段用于指定你的程序入口文件,${workspaceFolder}表示當前項目根路徑
浮窗的操作按鈕功能依次為:
日志斷點是普通斷點的一種變體,區別在于不會中斷調試,而是可以把信息記錄到控制臺。日志斷點對于調試無法暫停或停止的服務時特別有用。步驟如下:
可以使用{}使用變量,比如在此處添加日志斷點,b的值為${b}
條件斷點是表達式結果為true時才會進行斷點,步驟如下:
只有該行代碼命中了指定次數,才會進行斷點。步驟如下:
僅當執行到達與內聯斷點關聯的列時,才會命中內聯斷點。這在調試在一行中包含多個語句的縮小代碼時特別有用。比如for循環,短路運算符等一行代碼包含多個表達式時會特別有用。步驟如下:
可以將變量添加到監聽面板,實時觀察變量的變化。
開發 Web 程序通常需要在 Web 瀏覽器中打開特定 URL,以便在調試器中訪問服務器代碼。VS Code 有一個內置功能“ serverReadyAction ”來自動化這個任務。
var express=require('express');
var app=express();
app.get('/', function(req, res) {
res.send('Hello World!');
});
app.listen(3000, function() {
console.log('Example app listening on port 3000!');
});
{
"type": "node",
"request": "launch",
"name": "Launch Program",
"program": "${workspaceFolder}/app.js",
"serverReadyAction": {
"pattern": "listening on port ([0-9]+)",
"uriFormat": "http://localhost:%s",
"action": "openExternally"
}
}
pattern是設置匹配的程度端口號,端口號放在小括號內,即作為一個正則的捕獲組使用。uriFormat映射為URI,其中%s使用pattern中的第一個捕獲組替換。最后使用該URI作為外部程序打開的URI。
關于NodeJs項目的調試方法,已經在上述的斷點的基本使用部分做了介紹,可以網上滾動翻閱。
{
"version": "2.0.0",
"tasks": [
{
"type": "typescript",
"tsconfig": "tsconfig.json",
"problemMatcher": [
"$tsc"
],
"group": "build",
"label": "tsc: 構建 - tsconfig.json"
}
]
}
注意,如果編譯后的js文件不在相應的位置,通過圖中的outFiles字段可以指定ts編譯后的js路徑。
修改工作區ts版本的方法:
學會了上述ts的調試后,我們嘗試調試html文件,并且html文件中引入ts文件:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<h3>Hello</h3>
<script src="./out/index.js"></script>
</body>
</html>
const num: number=1221;
console.log(num);
function fn(arg: string): void {
console.log('fn', arg);
}
document.body.append('World')
fn("he");
{
// 使用 IntelliSense 了解相關屬性。
// 懸停以查看現有屬性的描述。
// 欲了解更多信息,請訪問: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"type": "pwa-chrome",
"request": "launch",
"name": "Launch Chrome",
"url": "file:///E:/demo/vscode/debug/ts/index.html",
"preLaunchTask": "tsc: 構建 - tsconfig.json",
"webRoot": "${workspaceFolder}"
}
]
}
下面介紹兩種調試vue2項目的3種方法,其他框架的調試也類似:
module.exports={
configureWebpack: {
// 生成sourceMaps
devtool: "source-map"
}
};
{
"version": "0.2.0",
"configurations": [
{
"type": "chrome",
"request": "launch",
"name": "vuejs: chrome",
"url": "http://localhost:8080",
"webRoot": "${workspaceFolder}",
"breakOnLoad": true,
"pathMapping": {
"/_karma_webpack_": "${workspaceFolder}"
},
"sourceMapPathOverrides": {
"webpack:/*": "${webRoot}/*",
"/./*": "${webRoot}/*",
"/src/*": "${webRoot}/*",
"/*": "*",
"/./~/*": "${webRoot}/node_modules/*"
},
"preLaunchTask": "serve"
}
]
}
{
"version": "2.0.0",
"tasks": [
{
"label": "serve",
"type": "npm",
"script": "serve",
"isBackground": true,
"problemMatcher": [
{
"base": "$tsc-watch",
"background": {
"activeOnStart": true,
"beginsPattern": "Starting development server",
"endsPattern": "Compiled successfully"
}
}
],
"group": {
"kind": "build",
"isDefault": true
}
}
]
}
該腳本的作用是運行npm run serve編譯命令。
注意:此方式的主要點在于launch.json配置文件中,通過preLaunchTask字段指定調試前先運行一個任務腳本,preLaunchTask的值對應tasks.json文件中的label值。
更多詳細內容,大家可以點擊這里的參考文檔查閱。
module.exports={
configureWebpack: {
// 生成sourceMaps
devtool: "source-map"
}
};
# 終端執行命令,啟動項目
npm run serve
更多詳細內容,請點擊這里的參考文檔查閱。
{
"version": "0.2.0",
"configurations": [
// 省略Chrome的配置...
// 下面添加的Firefox的配置
{
"type": "firefox",
"request": "launch",
"reAttach": true,
"name": "vuejs: firefox",
"url": "http://localhost:8080",
"webRoot": "${workspaceFolder}/src",
"pathMappings": [{ "url": "webpack:///src/", "path": "${webRoot}/" }]
}
]
}
Firefox初始啟動時不會觸發調試,需要刷新一次
Electron很多人都使用過,主要用于開發跨平臺的系統桌面應用。那么來看下vue-cli-electron-builder創建的Electron項目怎么調試。步驟如下:
module.exports={
configureWebpack: {
devtool: 'source-map'
}
}
{
"version": "0.2.0",
"configurations": [
{
"name": "Electron: Main",
"type": "node",
"request": "launch",
"protocol": "inspector",
"preLaunchTask": "bootstarp-service",
"runtimeExecutable": "${workspaceRoot}/node_modules/.bin/electron",
"windows": {
"runtimeExecutable": "${workspaceRoot}/node_modules/.bin/electron.cmd"
},
"args": ["--remote-debugging-port=9223", "./dist_electron"],
"outFiles": ["${workspaceFolder}/dist_electron/**/*.js"]
},
{
"name": "Electron: Renderer",
"type": "chrome",
"request": "attach",
"port": 9223,
"urlFilter": "http://localhost:*",
"timeout": 0,
"webRoot": "${workspaceFolder}/src",
"sourceMapPathOverrides": {
"webpack:///./src/*": "${webRoot}/*"
}
},
],
"compounds": [
{
"name": "Electron: All",
"configurations": ["Electron: Main", "Electron: Renderer"]
}
]
}
此處配置了兩個調試命令: Electron: Main用于調試主進程,Electron: Renderer用于調試渲染進程;compounds[].選項用于定義復合調試選項; configurations定義的復合命令是并行的; preLaunchTask用于配置命令執行前先執行的任務腳本,其值對應tasks.json中的label字段; preLaunchTask用在compounds時,用于定義configurations復合任務執行前先執行的腳本。
{
// See https://go.microsoft.com/fwlink/?LinkId=733558
// for the documentation about the tasks.json format
"version": "2.0.0",
"tasks": [
{
"label": "bootstarp-service",
"type": "process",
"command": "./node_modules/.bin/vue-cli-service",
"windows": {
"command": "./node_modules/.bin/vue-cli-service.cmd",
"options": {
"env": {
"VUE_APP_ENV": "dev",
"VUE_APP_TYPE": "local"
}
}
},
"isBackground": true,
"args": [
"electron:serve", "--debug"
],
"problemMatcher": {
"owner": "custom",
"pattern": {
"regexp": ""
},
"background": {
"beginsPattern": "Starting development server\\.\\.\\.",
"endsPattern": "Not launching electron as debug argument was passed\\."
}
}
}
]
}
在主進程相關代碼上打上斷點,然后啟動調試主進程命令就可以調試主進程了
注意,這里的options參數是根據實際的情況,自定義添加我們運行項目時所需要的參數,比如我這里因為啟動項目的npm命令是:
"serve-local:dev": "cross-env VUE_APP_TYPE=local VUE_APP_ENV=dev vue-cli-service electron:serve"
切換到渲染進程的調試選項,在渲染進程的代碼處打上斷點,點擊調試。注意,此時并不會有斷點終端,需要ctrl+r手動刷新軟件進程才會看到渲染進程的斷點。
同時開啟渲染進程和主進程的調試,只需要切換到調試全部的選項即可。注意,此種方式因為compounds[].configurations配置是并行執行的,并不一定能保證渲染進程調試一定能附加到主進程調試成功(估計是時機問題),有些時候會調試渲染進程不成功。所以,可以采取上面的方式進行調試。
更多調試Electron的內容,可以點擊參考文檔查閱。
@category:"snippets"
{
"自動補全console.log": {
"scope": "javascript,typescript",
"prefix": "log",
"body": [
"console.log('$1');",
"$2"
],
"description": "輸出console.log('')"
}
}
關鍵詞 | 類型 | 說明 |
scope | string | 代碼片段生效的作用域,可以是多個語言,比如javascript,typescript表示在js和ts生效,不加scope字段表示對所有文件類型生效 |
prefix | `string | string[]` |
body | string[] | 代碼片段內容,數組的每一項會是一行 |
description | string | IntelliSense 顯示的片段的可選描述 |
1 -1?n | - | 定義光標的位置,光標根據數字大小按tab依次跳轉;注意>$0<是特殊值,表示光標退出的位置,是最后的光標位置。 |
"body": [
"console.log('${1:abc}');"
],
用兩個豎線包含多個選擇值,|多個選擇值直接用逗號隔開|
"body": [
"console.log('${1:abc}');",
"${2|aaa,bbb,ccc|}"
],
只需要選擇文件 -> 首選項 -> 用戶片段 -> 新建xxx文件夾的代碼片段, 新建后會在當前工作區生成.vscode/xxx.code-snippets文件
vscode內置了對Emmet的支持,無需額外擴展。例如html的Emmet演示如下:
選中或者光標所處的位置,按F2可以對所有的變量重命名
VsCode擴展插件可以做什么事情?
基于Yeoman快速開發VsCode插件,步驟如下:
# 終端運行,主要node版本需要12及以上,node10會安裝報錯
npm i -g yo generator-code
*請認真填寫需求信息,我們會在24小時內與您取得聯系。