Chrome DevTool 小技巧

Chrome DevTool 是 Web 開發中必不可少的生產工具,其功能主要包括調試、性能分析、頁面優化、定制樣式表……網上已經有很多 DevTool 的使用講義,尤其是以調試技巧最為繁多;本文不想贅述這類通識知識,僅僅介紹一些我覺得比較便利的一些小功能。

Dom 斷點

私以為,Dom 斷點是僅次于 JS debug 的重要功能。我是一個維護廿年遺產應用的老碼農,該遺產系統的特點是:無法通過正常途徑找到 JS 的響應入口;但是工作依舊得做,是吧?所以,“通過 Dom 表象定位到觸發事件”就成為了我的常規 Debug 手段。比如,我要查看“刪除元素的事件”,只需要導航到目標 Dom -> 鼠標右鍵 -> Break on -> node removal,接著操作頁面就可以自動幫我定位到相關 JS 代碼了。

Dom Debugger

monitor 函數

monitor 函數是 Chrome DevTool 自帶的一個監聽器(監聽函數的函數 ??);可以手動在 Console tab 里添加,或是干脆放在源碼里使用。使用方法很簡單,看個簡單的例子就懂了:

monitor

如上圖所示,我們通過 monitor hello 函數,在它被調用時,打印出 function XXX called 的字樣;帶參數時,還能顯示具體內容。

不想監聽了,unmonitor(hello) 即可。

console 輸出

使用 monitor 函數的人還是相對少數,很多人覺得函數體里寫個 console.log 也可以監控,不須要額外的認知。這里不去爭論細節了,效率問題罷了。不過,即便是處處用到的 console 對象,大家也可以關注一些簡單 Practice:

  • console.log 路人皆知,不過打印的時候推薦包個大括號

    如下所示,單純“打印兩個值”與“打印鍵值對”相比,在開發體驗上還是有差距的。

    console.log
  • console.table:以表單形式打印出對象

    console.table
  • info & warn & error :log 的三種分級顯示

    三種 log 背景色不同,可以通過點 Default levels 分級顯示輸出

    warn & error & info

保留 log

既然說到 log,大家在查看日志的時候有沒有碰到過這類問題:提交表單后當前頁面自動跳轉了,這個過程中的日志還沒來得及細看就全沒了?這時候挺容易奔潰的,不過也別太焦慮,Chrome 早就替大家想好了解決方案。在 Network 標簽下有個 Preserve log 的復選框,勾上就行了。不過這個功能啟動了,clear() 方法就不能用了——畢竟是兩個互斥的操作。

Preserve log

拷貝資源路勁

我經常會拷貝頁面里的靜態資源路徑,然后在新的 tab 里打開查看。傳統的操作是先點 Edit as HTML,然后在編輯框里滑選。最近我發現 Chrome 加了個新功能,叫 Copy link address,直接點擊就復制到剪切板里了。

Copy link address

能拷貝靜態資源路徑,自然也能復制動態資源。這個需要去 Network 標簽里找,右鍵 response 里的資源,有個 copy 下拉選項,Copy link address就在它的二級選項里了;其他二級選項也是挺有用的,大家可以挨個嘗試一下。

Copy Response

命令框

最后再說說 Chrome DevTool 的命令框——快捷鍵 ctrl+shift+p (Windows)或 cmd+P(Mac),這個和 VS Code 是一樣的;里面可以搜索到所有的 DevTool 功能。就說我最常用的一兩個功能吧。

  • 截屏

    很多人都會裝 Chrome 應用商店里的截屏擴展,事實上它們調的是 DevTool 里的 API。大家在命令框里輸入 Screenshot 就可以使用這個功能了。

    Screenshot
  • 切換 dock 位置

    這個是我個人癖好,沒事就讓 devtool 的 dock 位置跳來跳去。大家可以用鼠標點最右上角的三個點來切換;有時候不想用鼠標了,就試試這個鍵盤操作。

    Dock side

小結

前段時間在看人類發展史,其中提到掌握和熟練使用工具是人類進化中的關鍵一步。我個人是非常推崇效率工具的,使用舒適的生產工具能顯著地提升開發體驗,并讓工作變得不那么枯燥。但是,不是所有人都有這種迫切需求的。我就看過很多從業多年的老人,對開發工具的感知處在非常木訥的階段,比如不能區分 IE devtool 和 Chrome devtool 的高下,這個也是挺有趣的。

好了,今天就講了幾個我覺得有點意思的小功能。不知道大家有沒有自己鐘愛的功能呢?也請留言告訴我們。

文章同步發布于an-Onion 的 Github。碼字不易,歡迎點贊。

?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 227,837評論 6 531
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 98,196評論 3 414
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 175,688評論 0 373
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 62,654評論 1 309
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 71,456評論 6 406
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 54,955評論 1 321
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,044評論 3 440
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 42,195評論 0 287
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 48,725評論 1 333
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 40,608評論 3 354
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 42,802評論 1 369
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,318評論 5 358
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,048評論 3 347
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,422評論 0 26
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 35,673評論 1 281
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 51,424評論 3 390
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 47,762評論 2 372

推薦閱讀更多精彩內容