謝謝邀請!
作為一名前端,小生70%的工作都是在做移動端的開發,在移動端上開發web應用是不能借助強大的chromedebug工具的,沒有控制臺,不能打斷點,跟不了代碼邏輯,還看不見dom樹,調試起來比較困難,下面我來談談我的調試經驗!
雖然用不了
console.log
,但是alert還是可以用的,會在手機上彈出一個框,至少可以打印一些字符串和數字,如果需要打印對象,要不對象序列化一下!用它可以判斷我們的代碼有沒有更新,代碼有沒有走到指定的邏輯以及輸出是不是想要的值!
背景色在調試css樣式時比較好用,比如我們有時會遇到布局不符合預期的情況,但是不清楚是哪個dom節點導致的,可以給dom節點加背景色,每個dom節點所占的區域一目了然,進而判斷哪個節點的樣式出了問題!
當你在調試一個非常復雜的頁面時,你很難快速確定問題所在,特別是你突然被抓去調試一個陌生的頁面!怎么辦?我的殺手锏就是刪代碼,以每次刪除一半(具體刪除多少自己決定),刪完至少保證語法沒問題!看看需要解決的問題還在不在,如果還存在,就繼續刪,如果不存在了,那問題就在自己剛剛刪除的代碼片段里面,繼續縮小范圍!還有一個場景,就是如果你的代碼依賴別人的代碼,出了問題,你可以用此招快速定位是不是自己的問題,如果不是趕緊甩鍋!
window上用Fiddler,mac上用Charles,都可以用來代理本地文件!修改了本地的代碼,就可以代理到自己的手機上!上面的三個方法可以基于代理來使用!
打開蘋果手機的webinspector,在mac上打開safari,菜單欄中顯示“開發”菜單。用iphoneusb插線連接mac,在safari中訪問頁面,在mac的菜單欄里面就可以找到對應的手機頁面,點開會出來一個safari的控制臺,長得幾乎和chrome控制臺一樣,然后就可以方便的調試!缺點:必須要有mac,而且只能蘋果safari,局限性比較大!
想過自己開發一款移動端控制臺嗎?騰訊的前端就開發了一款移動端調試模塊!
https://github.com/Tencent/vConsole
,umd規范,直接放在自己的代碼就行,小伙伴們自己去試一試吧!
大家有什么好點子,可以寫在評論里,大家一起分享一下!