平常工做中再牛逼的大佬都不敢說本身的代碼是徹底沒有問題的,既然有問題,那就也就有調試,說到調試工具,你們可能對於 fiddler、Charles、chrome devtools、Firebug、還有Safari遠程調試等比較熟悉,甚至有些是我可能也沒有用過的;css
這裏噴一句吧,誰都別給我提IE啊,IE那個不叫調試工具,那叫坑爹神器,話說最近不是又甩鍋了,把本身的革命老根據地都甩了。html
俗話說:「預先善其事必先利其器
」,今天想給你們分享的是一個可能被人們忽略的小工具,爲何說被人們忽略呢?由於發現github上它才4.6k Star、457 Fork、Watch 173次,也就是說千萬開發者中知道它的人可能不超過5w,因而決定分享一波,此文重在引導,但願能幫你們開發中帶來一點點便利、效率的提高:前端
Eruda是什麼?Eruda 是一個專爲前端移動端、移動端設計的調試面板,相似Chrome DevTools
的迷你版(沒有chrome強大 這個是能夠確定的),其主要功能包括:捕獲 console
日誌、檢查元素狀態、顯示性能指標、捕獲XHR請求、顯示本地存儲
和 Cookie
信息、瀏覽器特性檢測等等。github
雖然說平常的移動端開發時,通常都是在用Chrome DevTools瀏覽器的移動端模式模擬各類手機型號來進行開發和調試,確保功能/頁面展現等都沒有問題了,纔會提交測試;chrome
可是前面都講了,只是模擬、模擬,當下手機品牌可算是千千萬,手機中各類類瀏覽器,甚至APP都有本身不同的特點 腰間盤突出,有的還特別突出,有病咱們得給它治啊,否則測試、產品、需求、領導都不會放過咱們,好比下圖場景。npm
方式一,默認引入:
<script src="//cdn.jsdelivr.net/npm/eruda"></script>
<script>eruda.init();</script>
方式二,動態加載:
__DEBUG__ && loadJS('http://cdn.jsdelivr.net/eruda/1.0.5/eruda.min.js', ()=>{
eruda.init();
});//蘇南的專欄 交流:91259409五、公衆號:honeyBadger8
方式三 ,指定場景加載:
//好比線上 給本身留一個後門,
//咱們通常的作法是喜歡給某個不起眼的元素,添加一個點擊事件,要點它十次、八次之後纔開啓 debug 模式;
;(function () {
var src = 'http://cdn.jsdelivr.net/eruda/1.0.5/eruda.min.js';
if (!/eruda=true/.test(window.location) && localStorage.getItem('active-eruda') != 'true') return;
document.write('<scr' + 'ipt src="' + src + '"></scr' + 'ipt>');
document.write('<scr' + 'ipt>eruda.init();</scr' + 'ipt>');
})();
方式四 ,npm:
npm install eruda --save
…… 加載的方式不少
複製代碼
約100kb gzip
);console
誕生以前,咱們的調試功能都是alert過多,包括如今的移動端,在手機上咱們想看到參數值、數據、節點等都以alert打印爲多數,但過於粗暴、並且一不當心有可能帶到線上去了;chrome
,直接在控制檯執行js代碼;Plugins
插件,作到跟PC端同樣,造成 dom tree;Application
+ Source,二者的結合體;1.0.5
,好像是沒有插件這一項的;Dom tree
,插件這部分並無都實際應用過,因此也就不打腫臉充胖子
了,有興趣的同窗能夠本身看看。以上就是今天給你們帶來的分享,工做中用了蠻久,挺方便的,對於定位移動端的疑難雜症問題、甚至留下後門定位線上問題都有很大幫助,如文中有理解不到位之處,歡迎留言指出。json
線上問題咱們通常的作法是喜歡給某個不起眼的元素,添加一個點擊事件,要點它十次、八次之後纔開啓 debug 模式
;後端
上面二維碼確實是真實的官方Demo,不用擔憂有套路,也有連接:eruda.liriliri.io/ 瀏覽器
Github 地址:github.com/liriliri/er…
做者:蘇南 - 首席填坑官
交流羣:912594095[
資源獲取/交流羣
]、公衆號:honeyBadger8
本文原創,著做權歸做者全部。商業轉載請聯繫
IT平頭哥聯盟
得到受權,非商業轉載請註明原連接及出處。