国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

善用瀏覽器的一些調(diào)試技巧

這篇具有很好參考價值的文章主要介紹了善用瀏覽器的一些調(diào)試技巧。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

$0 和 __vue__

$0 是指當(dāng)鼠標(biāo)點擊 Element 面板的某個 dom 元素后,console 里 $0 變量會自動指向該 dom 元素對象

__vue__ 是指 vue 框架會往 vue 組件 $mount 掛載的 dom 元素對象上添加一個 __vue__ 變量來指向當(dāng)前 vue 組件

善用瀏覽器的一些調(diào)試技巧

善用瀏覽器的一些調(diào)試技巧

這意味我們可以直接在 console 面板里拿到任意 vue 組件實例對象:

  • 可以查看對象內(nèi)部任意屬性
  • 也可以直接操作對象內(nèi)部的屬性來達(dá)到預(yù)期的調(diào)試效果
  • 甚至可以用來查看三方庫的 api,比如 element-ui 的某個組件內(nèi)部的 api

或許你會疑問,這不是安裝 chrome 插件(vue devtools)就可以搞定的事嗎,插件還是個可視化界面操作,更直觀便捷

沒錯!插件當(dāng)然更方便,但沒準(zhǔn)插件內(nèi)部實現(xiàn)原理就是這樣的呢,掌握這個技巧,也可以在一些插件無法覆蓋的場景下來調(diào)試頁面,比如:

  • 生產(chǎn)環(huán)境的頁面
  • 內(nèi)網(wǎng)部署且無法代理到本地的頁面
  • 非 chrome 瀏覽器
  • 等等

舉一反三:

  • 很多開源庫框架其實都會往綁定的 dom 或者 window 上掛載一些變量上去,善于在 console 利用這些變量,可以方便我們進(jìn)行很多非本地開發(fā)場景下的調(diào)試
  • 我們?nèi)粘7庋b一些復(fù)雜業(yè)務(wù)、復(fù)雜組件時,也可以參考這種思路,給自己開一個非本地開發(fā)場景下的調(diào)試入口,但注意別內(nèi)存泄漏了
  • window 上掛實例對象變量容易導(dǎo)致內(nèi)存泄漏,所以建議掛一些全局作用域的對象;實例對象盡量掛與他生命周期綁定的 dom 對象

接口數(shù)據(jù)搜索定位

善用瀏覽器的一些調(diào)試技巧

網(wǎng)絡(luò)面板支持多個維度的搜索功能:

  • 根據(jù)內(nèi)容關(guān)鍵詞定位接口
    • 常用于看見界面某個文案或者只知道某個關(guān)鍵詞,但想定位它是哪個接口返回時的場景
  • 在接口返回的內(nèi)容里定位關(guān)鍵詞
  • 根據(jù) url 過濾接口

源碼定位

jquery 時代的網(wǎng)頁源碼直接原原本本在瀏覽器上,調(diào)試和閱讀都非常方便;

前端工程化后,混淆和壓縮已經(jīng)是標(biāo)配,當(dāng)出現(xiàn)生產(chǎn)故障時,首先考慮的應(yīng)該是本地復(fù)現(xiàn)或者是將生成環(huán)境頁面代理至本地的思路來解決;
但總會有某些場景,由于各種受限,只剩下瀏覽器直接操作的手段,因此,掌握一些源碼定位和調(diào)試的方式技巧還是有必要的

全局搜索

善用瀏覽器的一些調(diào)試技巧

字符串、對象屬性字段名這些不會被混淆,可以借助這類場景的關(guān)鍵詞來搜索定位源碼位置
通常界面也是第一看到的東西,盡量找個界面上看著不像通用類的文案全局搜索下,基本都能定位到對應(yīng)組件源碼

也可以審查元素,在 Element 面板里找到對應(yīng) dom 上比較唯一的 class 或 id 等來全局搜索

接口調(diào)用棧

善用瀏覽器的一些調(diào)試技巧

接口也是邏輯分析的入口點之一,比如找到某個頁面呈現(xiàn)數(shù)據(jù)的請求接口,跟著調(diào)用棧走下去基本能梳理界面從拿到數(shù)據(jù)到呈現(xiàn)做了什么事
但要注意過濾掉三方庫(如 axios, vue 等)對接口的封裝,找到真實屬于邏輯源碼的調(diào)用棧

console 面板的函數(shù)源碼跳轉(zhuǎn)

善用瀏覽器的一些調(diào)試技巧

console 面板上的 log 日志,或者通過 log 輸出一個函數(shù),都支持點擊跳轉(zhuǎn)到對應(yīng)源碼位置
借助 $0 和 __vue__ 變量,找到對應(yīng)組件的某個方法入口,通過 log 輸出方法再跳轉(zhuǎn)至源碼位置,就能針對性的梳理某個邏輯源碼

事件監(jiān)聽事件跳轉(zhuǎn)

善用瀏覽器的一些調(diào)試技巧

對于某些按鈕等組件的點擊之類的事件,可以直接通過審查元素的 Element 面板的 EventListeners(事件監(jiān)聽器)這邊查看到該按鈕各類事件的監(jiān)聽器
過濾掉三方庫的統(tǒng)一事件監(jiān)聽器,找到自己邏輯源碼的事件監(jiān)聽器入口,也能針對性梳理該事件處理邏輯源碼

源碼調(diào)試

斷點

善用瀏覽器的一些調(diào)試技巧

代碼里加入 debugger 可以觸發(fā)斷點,但前提是本地開發(fā)調(diào)試模式
也可以直接瀏覽器上操作斷點,除了常規(guī)的直接點擊源碼斷點之外,也可以使用一些具體場景的斷點,比如定時器觸發(fā)時進(jìn)入斷點、異步請求響應(yīng)時斷點,DOM 變更時斷點等等

overrides(覆蓋)

善用瀏覽器的一些調(diào)試技巧

如果想在瀏覽器上修改源碼并生效的話,需要使用到 overrides(覆蓋|替換)功能,如上圖
先在 Source(源代碼/來源) 面板啟用 overrides(替換) 功能,然后找到要編輯的源碼文件,右鍵,點擊替換內(nèi)容(Save for override)
接下去就可以直接瀏覽器上修改源碼,刷新后會加載這份修改后的代碼文件

當(dāng)你發(fā)現(xiàn)網(wǎng)絡(luò)面板有個感汗號警告時,就意味著你啟用了本地替換的功能,指定的源碼文件不會從網(wǎng)絡(luò)上加載,而是加載本地臨時替換修改過的文件
這樣就可以達(dá)到直接在源碼調(diào)試的效果

實操場景說明

以上是個人日常比較常用的一些操作,每個技巧都不是割裂開的,經(jīng)常是組合交叉使用

比如某生產(chǎn)環(huán)境來了個故障,本地?zé)o法復(fù)現(xiàn),無法代理,還是個內(nèi)網(wǎng),只能遠(yuǎn)程客戶設(shè)備直接在瀏覽器界面上調(diào)試定位

首先,我們要定位到大概源碼,然后分析、斷點、調(diào)試

怎么定位源碼呢:

  • 字符串是不會被混淆的,所以可以全局搜索方式來嘗試
  • 如果匹配點太多,那也可以先定位到某個關(guān)鍵接口,然后根據(jù)接口定位到源碼
  • 如果還是沒有定位到,對象的屬性是不會被混淆的,所以也可以通過 $0 和 __vue__ 來根據(jù)某個 vue 組件的方法來定位源碼

定位到源碼后,斷點還分析不出問題時,就可以繼續(xù)利用 overrides 覆蓋功能來直接修改瀏覽器源碼進(jìn)行調(diào)試文章來源地址http://www.zghlxwxcb.cn/news/detail-760576.html

到了這里,關(guān)于善用瀏覽器的一些調(diào)試技巧的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • 常用瀏覽器調(diào)試方法

    # 1 調(diào)試是什么? # 1.1 調(diào)試是什么? **Bug的起源**:當(dāng)時人們還在使用第一代真空計算機(馬克二型),這種計算機是依靠控制電流來改變開關(guān),從而實現(xiàn)控制,但是它會發(fā)出大量的熱和光。 1949年9月9日,天氣非常炎熱,有一只娥死在了70號繼電器里面,造成電路不通,機器死

    2024年02月14日
    瀏覽(22)
  • 安卓手機瀏覽器:遠(yuǎn)程調(diào)試

    安卓手機瀏覽器:遠(yuǎn)程調(diào)試

    簡介 :有時我們需要調(diào)試手機瀏覽器網(wǎng)頁信息,這時除了使用fiddler抓包攔截篡改,還可以通過USB連接,通過PC遠(yuǎn)程調(diào)試手機上的瀏覽器信息,進(jìn)行映射。 歷史攻略: adb:安卓手機USB調(diào)試模式 前置準(zhǔn)備: 網(wǎng)頁內(nèi)容在移動設(shè)備上的體驗可能和電腦上完全不同。Chrome DevTools 提供

    2024年02月09日
    瀏覽(23)
  • Chrome 瀏覽器遠(yuǎn)程調(diào)試

    Chrome 瀏覽器遠(yuǎn)程調(diào)試

    打開瀏覽器的遠(yuǎn)程調(diào)試 Chrome瀏覽器的快捷方式,右鍵選擇“屬性”,在目標(biāo)一欄加上 --remote-debugging-port=9222 ,后面的端口可以自己定義,完成之后啟動瀏覽器。 我們拿另外一個瀏覽器測試下 打開新版的edge瀏覽器,地址欄輸入 edge://inspect/#devices ,如果是chrome則需要輸入 chr

    2024年02月13日
    瀏覽(94)
  • Selenium:瀏覽器及鼠標(biāo)、鍵盤事件

    Selenium:瀏覽器及鼠標(biāo)、鍵盤事件

    目錄 一、控制瀏覽器 二、鼠標(biāo)事件 三、鍵盤事件 一、控制瀏覽器 webdriver主要提供操作頁面上各種元素的方法,但它也提供操作瀏覽器的一些方法,例如控制瀏覽器大小、前進(jìn)和后退等。 1、控制瀏覽器窗口大小 2、全屏顯示 webdriver提供了maximize_window()方法使打開的瀏覽器全

    2024年02月02日
    瀏覽(23)
  • 電腦技巧:Microsoft Edge瀏覽器技巧介紹

    電腦技巧:Microsoft Edge瀏覽器技巧介紹

    目錄 1、導(dǎo)入瀏覽器數(shù)據(jù) 2、Edge邊欄 3、實用的擴展功能 4、創(chuàng)建集錦列表 4.1 集錦的作用 4.2?使用方法 5、查找優(yōu)惠券 6、Edge效率省電模式 Microsoft Edge是Windows10操作系統(tǒng)預(yù)裝的一款非常棒的瀏覽器和之前的IE不同,采用了谷歌瀏覽器內(nèi)核,相比之前的版本好用了很多,今天給大

    2024年02月05日
    瀏覽(131)
  • web瀏覽器腳本的調(diào)試

    web瀏覽器腳本的調(diào)試

    水一貼。 在瀏覽器中按F12 點擊\\\"source\\\"或者\\\"源程序\\\" 點擊html、js、css等源碼文件所在的窗口的左邊,此時點擊處顯示為藍(lán)色光標(biāo),表示斷點中斷已經(jīng)設(shè)置完畢。 配合窗口右上角的\\\"繼續(xù)\\\" “下一步” \\\"跳過\\\"等控制按鈕,即可完成對網(wǎng)頁源碼的調(diào)試。

    2024年02月14日
    瀏覽(20)
  • 谷歌瀏覽器調(diào)試vue項目

    谷歌瀏覽器調(diào)試vue項目

    前言? ? ? ? ? 眾所周知,在項目過程中我們常常遇到的一個問題就是本地調(diào)試的時候沒問題但是發(fā)布到線上的時候就不行了。在時間充裕的情況下,我們當(dāng)然可以慢慢調(diào)試,但是那是不可能的。在線上遇到問題時,難免會倍感壓力和焦慮,這個時候就有必要強化前端的調(diào)試能力了

    2024年02月03日
    瀏覽(27)
  • 前端進(jìn)階之———瀏覽器調(diào)試巧技

    前端進(jìn)階之———瀏覽器調(diào)試巧技

    ????????有幸的參加了一次騰訊的面試,被面試官問到了JS能不能在瀏覽器上import依賴已經(jīng)遇到一個錯誤函數(shù)應(yīng)該怎么解決。之前的經(jīng)驗是做一些簡單的html,css樣式調(diào)試以及他的報錯信息,忽略了瀏覽器js調(diào)試的強大功能。覺得還是非常有必要的,很好的幫助我們以解決后

    2024年02月10日
    瀏覽(17)
  • JS一些常用判斷(包括判斷是否是蘋果(ios)/安卓(Android)、是否是Safari瀏覽器、檢測瀏覽器語言等等)

    提示:文章寫完后,目錄可以自動生成,如何生成可參考右邊的幫助文檔 提示:這里可以添加本文要記錄的大概內(nèi)容: 參考鏈接 JS判斷客戶端是否是iOS或者Android:http://caibaojian.com/browser-ios-or-android.html

    2024年02月04日
    瀏覽(42)
  • 打開谷歌瀏覽器遠(yuǎn)程調(diào)試功能

    打開谷歌瀏覽器遠(yuǎn)程調(diào)試功能

    谷歌瀏覽器遠(yuǎn)程調(diào)試功能 首先我們來啟動Chrome的遠(yuǎn)程調(diào)試端口。你需要找到Chrome的安裝位置,在Chrome的地址欄輸入 chrome://version 就能找到Chrome的安裝路徑 開啟遠(yuǎn)程控制命令 開啟后的樣子(注意要關(guān)閉其他谷歌瀏覽器的窗口) 記住其中的 webSocketDebuggerUrl 后面的地址。這就是我們

    2024年02月11日
    瀏覽(21)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包