vConsole 正在参加 2020 年度 OSC 中国开源项目评选,请投票支持!
vConsole 在 2020 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
投票让它出道
已投票
授权协议 MIT
操作系统 跨平台
软件类型 开源软件
开发厂商 腾讯
地区 国产
提 交 者 红薯
适用人群 未知
收录时间 2016-04-28

软件简介

vConsole,手机前端开发调试利器。

1 前言

我们在开发手机版网页的时候,常常会出现下面的情景:

 (1) 开发时,在自己电脑上运行得好好的,在手机上打开就挂了,但是手机上又看不到error log; 

 (2) 上线后,某用户表示页面失灵,但我们自己又重现不出来,看不到用户侧的出错信息。

如果说(1)还可以通过电脑连接手机以查看log来解决,那(2)在没有完善的前端上报体系时就非常被动了。

作为开发者,我们的诉求很简单:有没有快捷的方法在手机前端页面看到log日志?

2 vConsole前端调试面板

莫慌,抱紧vConsole!

vConsole是一款由微信公众平台前端团队打造的前端调试面板,专治手机端看log难题。

目前vConsole自带有2个面板,默认为“日志”面板,负责展示log。

细心的同学可能会发现上面的log颜色各有不同。与电脑端的Developer Tools一样,开发者可以通过调用不同的方法来打出不同的颜色,以便快速区分日志类型:

console.log('foo'); // 白底黑字  console.info('bar'); // 白底紫字  console.debug('oh'); // 白底黄字  console.warn('foo'); // 黄底黄字  console.error('bar'); // 红底红字

第二个是“系统”面板,vConsole会自动将一些基础信息(如系统版本)打印出来,方便开发者定位问题。若页面是在微信内置浏览器中打开的,vConsole还会打印出微信版本号、当前网络类型等额外信息。

vConsole面板

默认情况下,vConsole的面板是隐藏起来的。我们可以点击右下角的“面板”悬浮按钮来显示vConsole面板。

3 使用方法

Talk is cheap, show me the code.

首先,在需要展示日志的页面引入vConsole模块。我们建议在<head>中而非<body>底部引入,方便后续的新版本vConsole在页面初始化时预埋各种debug钩子。引入后,会自动生成window.vConsole对象实例。

<head> <script src='path/to/vconsole.min.js'></script> </head>

对于更通常的情况,我们只需在调试模式下才启用vConsole,平时用户无需看到调试面板。这时候就需要开发者自行判断引入模块的时机。以PHP为例,通过判断URL中有无 dev_mode参数来选择性加载vConsole:

<?php if($_GET['dev_mode'=='1'){?> <script src='path/to/vconsole.min.js'></script> <?php}?>

如果项目中用到了CommonJS或SeaJS这种AMD/CMD规范的模块加载方式,可以在module中使用require()引入vConsole:

var vConsole =require('path/to/vconsole.min.js');

好了,怎么打印log呢?与电脑端一致,可以直接使用console.log()等方法来打印日志,目前支持的方法有:

console.log('foo'); console.info('bar'); console.debug('oh'); console.warn('foo'); console.error('bar');

若页面未加载vConsole模块,console.log()会直接输出到原生控制台中;加载模块后,日志则会输出到原生控制台+前端面板。因此不必担心兼容性问题。

引入模块后,vConsole会有一小段时间用于初始化工作,在渲染出面板HTML之前将无法立即打印log。因此,若要在引入模块后立即打印log,应使用vConsole.ready()方法:

vConsole.ready(function() { console.log('Hello World'); 
});

4 在线demo

微信扫描以下二维码(或微信内长按图片识别二维码),即可体验vConsole面板。

目前vConsole已开源到WeChatFE的Github中。

展开阅读全文

代码

的 Gitee 指数为
超过 的项目

评论 (15)

加载中
eruda比这猛多了
2019/02/03 09:10
回复
举报
敢不敢放个再大点的二维码图片,浏览器都快显示不下了
2017/08/22 09:27
回复
举报
不错啊~就是有点小问题,import方式引入请求永远是pending,time永远不显示
2017/07/18 14:57
回复
举报
这个是腾讯的,和微信的这玩意贼像。https://alloyteam.github.io/AlloyLever/
2017/07/05 14:14
回复
举报
打分: 力荐
厉害
2017/06/14 10:58
回复
举报
要有类似开原的了,比你这功能强大
2017/04/09 10:39
回复
举报
打分: 力荐
2016/12/29 09:45
回复
举报
vconsole #vConsole#
2016/04/29 06:15
回复
举报
2016/04/29 07:12
回复
举报
感觉应该还不错,有机会试试看 #vConsole#
2016/04/29 07:27
回复
举报
更多评论
发表于软件架构专区
2019/02/03 08:15

vConsole 3.3.0 发布,手机前端开发调试利器

vConsole是一款由微信公众平台前端团队打造的前端调试面板,专治手机端看log难题。 目前vConsole自带有 2 个面板,默认为“日志”面板,负责展示log。 本次更新如下: 【特性】新增自动合并相同日志的能力。频繁输出相同日志时不再会被刷屏。 【修复】修复格式化日志(如 console.log('[foo]', 'bar'))无法显示到 Log ...

3
23
发表于服务端专区
2019/01/20 07:09

vConsole 3.2.2 发布,手机前端开发调试利器

vConsole是一款由微信公众平台前端团队打造的前端调试面板,专治手机端看log难题。 目前vConsole自带有2个面板,默认为“日志”面板,负责展示log。 本次更新如下: 【特性】新增控制台输入提示。 (by @65147400) 【特性】支持 SessionStorage。 (by @hkc452) 【修复】修复 JSON.stringify 函数被错误地改写的问题。 【修...

2
30
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
发表于大前端专区
2018/06/24 18:52

VConsole的使用

手机端控制台打印输出,方便bug的排查。 首先需要引入vconsole.min.js 文件,然后在文件中创造实例。就能直接使用了。 var vConsole = new VConsole(); vConsole的文件地址...

0
0
发表了博客
2018/08/04 14:11

webpack 引用vconsole

1.npm install -vconsole --save-dev 2.npm install -vconsele-webpack-plugin --save-dev 3.webpack.base.conf.js 'use strict' const path = require('path') const utils = require('./utils') const config = require('../config') const webpack = require('webpack') const vueLoaderConfig = require('./vue...

0
0
发表了博客
2018/12/20 19:11

vconsole使用

<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <script src="jquery.min.js"></script> <script src="https://www.w3cways.com/demo/vconsole/vconsole.min.js?v=2.2.0"></script> <script> $(document).ready(function(){ $(".btn1")....

0
0
发表了博客
2018/08/03 09:54

配置vConsole调试console

1.使用 npm 安装: npm install vconsole 再使用webpack,然后js代码中 import VConsole from 'vconsole/dist/vconsole.min.js' //import vconsole let vConsole = new VConsole() // 初始化 2.找到这个模块下面的 dist/vconsole.min.js ,然后复制到自己的项目中 <head> <script src="dist/vconsole.min.js"></script> ...

0
0
发表于大前端专区
2018/03/20 18:48

前端 手机 调试 框架 vConsole

git https://github.com/Tencent/vConsole vConsole:一个轻量、可拓展、针对手机网页的前端开发者调试面板。 特性: 查看 console 日志 查看网络请求 手动执行 JS 命令行 自定义插件 使用方法很简单,安装后直接创...

0
0
发表了博客
2019/06/20 18:02

移动端调试神器vConsole

vConsole.js 其实就是重写console方法,实现了类似于微信小程序的移动端调试效果 在普通html文件里使用 <script src="https://cdn.bootcss.com/vConsole/3.3.0/vconsole.min.js"></script> <script> // init vConsole var vConsole = new VConsole(); console.log('Hello world'); ...

0
0
发表了博客
2019/06/20 16:03

移动端调试利器-vConsole

现在移动端开发越来越火,随之而来的问题也越来越多,今天给大家介绍一款移动端调试神器,vconsole。 一、先引用文件,可以从https://www.bootcdn.cn/vConsole/下载,也可以下载保存在本地,直接引用    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>demo.html</title> <script src...

0
0
发表了博客
05/07 15:42

移动端vconsole引入

CDN地址: <script src="https://cdn.bootcss.com/vConsole/3.3.0/vconsole.min.js"></script> 引入CDN后在js里添加即可: var vConsole = new VConsole();...

0
0
发表了博客
2019/12/24 14:38

H5页面如何引入vConsole

vConsole github地址 vConsole 是腾讯开源的项目,这就简单的介绍一下使用 使用npm引入vconsole.min.js 下载 vConsole 的最新版本。(不要直接下载 dev 分支下的 dist/vconsole.min.js) 或者使用 npm 安装: npm install vconsole 引入 dist/vconsole.min.js 到项目中: <script src="path/to/vconsole.min.js"></scri...

0
0
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
暂无内容
15 评论
286 收藏
分享
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部