eruda 一个小而美的调试神器
小编推荐:Fundebug专注于JavaScript、微信小程序、微信小游戏,Node.js和Java实时BUG监控。真的是一个很好用的bug监控费服务,众多大佬公司都在使用。
引言
日常工作中再牛逼的大佬都不敢说自己的代码是完全没有问题的,既然有问题,那就也就有调试,说到调试工具,大家可能对于fiddler
、Charles
、chrome devtools
、Firebug
、还有Safari远程调试等比较熟悉,甚至有些是我可能也没有用过的;
这里喷一句吧,谁都别给我提IE啊,IE那个不叫调试工具,那叫坑爹神器,话说最近不是又甩锅了,把自己的革命老根据地都甩了。
俗话说预先善其事必先利其器,今天想给大家分享的是一个可能被人们忽略的小工具,为什么说被人们忽略呢?因为发现github上它才4.6k Star、457 Fork、Watch 173次,也就是说千万开发者中知道它的人可能不超过5w,于是决定分享一波,此文重在引导,希望能帮大家开发中带来一点点便利、效率的提升:
一个被人忽略的宠儿~
这里是IT平头哥联盟,我是
首席填坑官
—苏南,用心分享 做有温度的攻城狮。
Eruda是什么?
Eruda是什么?Eruda 是一个专为前端移动端、移动端设计的调试面板,类似Chrome DevTools
的迷你版(没有chrome强大 这个是可以肯定的),其主要功能包括:捕获 console
日志、检查元素状态、显示性能指标、捕获XHR请求、显示本地存储
和 Cookie
信息、浏览器特性检测等等。
虽说日常的移动端开发时,一般都是在用Chrome DevTools浏览器的移动端模式模拟各种手机型号来进行开发和调试,确保功能/页面展示等都没有问题了,才会提交测试;
但是前面都讲了,只是模拟、模拟,当下手机品牌可算是千千万,手机中各种类浏览器,甚至APP都有自己不一样的特色 腰间盘突出,有的还特别突出,有病我们得给它治啊,不然测试、产品、需求、领导都不会放过我们,比如下图场景。
项目上线了~
如何使用?
- 它支持npm方式的,这个是不是很开心??
- 外链,没错,就是外链的形式引入,对于它,我觉得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();
});//苏南的专栏 交流:912594095、公众号: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
); - 100kb不小了,用形容妹子的话来说就是:丰满,直接说它胖,你就死定了;
- 这里的小而美是指小巧功能也强大,界面也好看;
- 说了这么多 来看看它到底长啥样吧:
做移动端Web开发的一大痛点就是
功能清单
console
- console 的作用就不用废话了,大家都懂;
- 早期在
console
诞生之前,我们的调试功能都是alert过多,包括现在的移动端,在手机上我们想看到参数值、数据、节点等都以alert打印为多数,但过于粗暴、而且一不小心有可能带到线上去了; - eruda 能帮我们解决这个问题;所有的日志、错误都能帮我们捕获到
- 甚至我们还能像
chrome
,直接在控制台执行js代码;
微信开发必备 h5开发调试,利器Eruda
Elements
- eruda 它没有在PC端这么直观,但也因为在移动端展示的方式局限性,
- 它能把每一个父节点下的每一个子节点全部列出来;你点击某个子节点时,列出当前节点全部的属性、样式、盒子模型等;
- 查看标签内容及属性;查看Dom上的样式;支持页面元素高亮;支持屏幕直接点击选取;查看Dom上绑定的各类事件。
- 甚至也能使用
Plugins
插件,做到跟PC端一样,形成 dom tree;
使用神器eruda 进行移动端调试
PC、Mobile调试节点对比
Network
- 现在的项目大多都是前后端分享的形式了,前端处理的业务越来越多、各种请求资源等;
- 干的越多承担责任也越多、锅也越多,又大又平的那种哦~
- 所以 Network 的必要性不言而喻,它能捕获请求,查看发送数据、返回头、返回内容等信息,它对于我们平时前后端联调出现的问题定位是有很大帮助的,比如:后端说你请求参数少了,前端你看了代码逻辑没有问题,但在手机上就是调不通,Network 能很直接明了的看到你请求带了什么。
今天的主角男一号是:Eruda!vConsole的同类。,PC、eruda 数据请求对比
Resources
- 它跟 Chrome Devtools 里的
Application
+ Source,两者的结合体; - Resources 它能查看 Cookie、localStorage、sessionStorage等信息,并且还能执行清除操作(Application);
- 它还查看当前页面加载脚本及样式文件;查看页面加载过的图片等资源(Source);
好吧,感觉说的再多,也不如上图直接:
Resources 功能分析
Sources/Info
- Sources:查看页面源码;格式化html,css,js代码及json数据。
- Info:主要输出URL信息及User Agent;及其他的一些手机系统信息,同时也支持自定义输出内容哦。
Resources 功能分析
高阶用法
- 以上刚才介绍的是它的一些基本的功能,也是我自己在工作中用的较多的;
- 最近发现新版本功能要强大不少,之前一直用的
1.0.5
,好像是没有插件这一项的; - 大概看了一下,都蛮强大,包括上面的
Dom tree
,插件这部分并没有都实际应用过,所以也就不打肿脸充胖子
了,有兴趣的同学可以自己看看。 - 如果觉得已经的插件都满足不了你的需求,它还支持自定义插件自己编写。
高级插件用法等你去发现~
结尾:
以上就是今天给大家带来的分享,工作中用了蛮久,挺方便的,对于定位移动端的疑难杂症问题、甚至留下后门定位线上问题都有很大帮助,如文中有理解不到位之处,欢迎留言指出。
线上问题我们一般的做法是喜欢给某个不起眼的元素,添加一个点击事件,要点它十次、八次以后才开启 debug 模式;
上面二维码确实是真实的官方Demo,不用担心有套路,也有链接:https://eruda.liriliri.io/
作者:苏南South
链接:https://www.jianshu.com/p/5614e0ac1de4
关于Fundebug
Fundebug专注于JavaScript、微信小程序、微信小游戏、支付宝小程序、React Native、Node.js和Java实时BUG监控。 自从2016年双十一正式上线,Fundebug累计处理了9亿+错误事件,得到了Google、360、金山软件、百姓网等众多知名用户的认可。欢迎免费试用!
eruda 一个小而美的调试神器相关推荐
- Eruda 一个小而美的移动端调试神器
引言 日常工作中再牛逼的大佬都不敢说自己的代码是完全没有问题的,既然有问题,那就也就有调试,说到调试工具,大家可能对于fiddler.Charles.chrome devtools.Firebug ...
- eruda.js 移动端调试神器使用教程(eruda)
在日常的移动端开发时,一般都是试用chrome浏览器的移动端模式进行开发和调试,只有在chrome调试完成,没有问题了才会上到真机测试,移动端开发的一大问题就在于此, 各种品牌各种型号手机,手机中各种 ...
- eruda.js 移动端调试神器使用教程(eruda)
在日常的移动端开发时,一般都是试用chrome浏览器的移动端模式进行开发和调试,只有在chrome调试完成,没有问题了才会上到真机测试,移动端开发的一大问题就在于此, 各种品牌各种型号手机,手机中各种 ...
- web移动端调试神器Eruda
在Web开发过程中,对html页面进行开发和调试的时候都会用到浏览器提供的调试工具,小编我最常用的就是Chrome浏览器自带的开发者工具了,可以很方便的对JS代码进行断点调试,log也很方便.但是在移 ...
- html5页面调试工具,web移动端调试神器Eruda
在Web开发过程中,对html页面进行开发和调试的时候都会用到浏览器提供的调试工具,小编我最常用的就是Chrome浏览器自带的开发者工具了,可以很方便的对JS代码进行断点调试,log也很方便.但是在移 ...
- 移动端调试神器 eruda
<script src="//cdn.jsdelivr.net/npm/eruda"></script> 或者 import eruda from 'eru ...
- python 如何边改代码边调试_Python 代码调试神器:PySnooper
给大家推荐本我自己写的电子书<PyCharm中文指南>,把各种 PyCharm 的高效的使用技巧用GIF动态图的形式展示出来.有兴趣的可以看它的在线文档: http://pycharm.i ...
- json.tojsonstring 导致cpu飙高_阿里调试神器立功了!进程导致Kubernetes节点CPU飙高的排查与解决...
来源:https://www.cnblogs.com/maxzhang1985/p/12673160.html 一.发现问题 在一次系统上线后,我们发现某几个节点在长时间运行后会出现CPU持续飙升的问 ...
- Vue调试神器vue-devtools - 插件下载安装
文章目录 Google如何安装调试Vue的神器`vue-devtools` ? 安装介绍: demo实例 - 演示代码: 相关文章链接: 1. https://github.com/vuejs/vue ...
最新文章
- GitLab 8.15中引入了自动部署和Web终端
- 笨办法学python3.6 pdf_“笨办法”学Python3.pdf
- 21年编程,那些我踩过的坑!
- 体育测试数据绘图软件,原创健身运动体育测试数据统计app界面
- io读取文件无地址_流的基本概念和IO流入门
- Printer Processor 导致的一个问题
- 小微数字风控必学-冷启动开发风险评分(含实操)
- python撤销_python 取消转义字符作用
- .NET System.Web.HttpContext.Current.Request报索引超出数组界限。
- 关于Connection的一个测试
- 机房重构-panel控件
- 半功率点为啥是-3dB
- Pr 入门教程如何使用精确的剪辑蒙版?
- 夜神模拟器安装fiddler证书
- 平面设计师okr_设计团队如何推进OKR,实现设计赋能?
- 创业兵法:市场需求分析
- PHP入门-简单博客编写
- Hexo Icarus配置和美化升级
- 图片拼图微信小程序源码下载支持多模板制作和流量主
- 自己搭建的网站,浏览器无法访问此页面解决方法
热门文章
- 中国涡轮盘拉床市场现状研究分析与发展前景预测报告(2022)
- @所有人:你即将被AI移出群聊
- 基于java前行国家公务员模拟笔试系统计算机毕业设计源码+系统+lw文档+mysql数据库+调试部署
- 淘淘商城第32讲——CMS内容管理系统的搭建
- 计算机考研王道408【数据结构/计算机组成原理/操作系统/计算机网络】知识点总结(PDF版)
- 普林斯顿微积分读本篇十八:复数
- 黑马程序员_考生成绩管理系统
- python数据类型可变和不可变_python3数据类型–可变与不可变 | 吴老二
- 分享77个Java源码,总有一款适合您
- SCRT连不上本地虚拟机的linux解决方法