A lightweight, extendable front-end developer tool for mobile web page.
EN:
Feat(Log)
Add new option log.showTimestames
, see Public Properties & Methods.Fix(Core)
Use polyfill click
event to prevent raw click event not working in some cases.Fix(style)
Fix CSS transition failure in WeChat webview by using bottom
instead of transform
.Fix(Core)
Fix error when calling vConsole method in onReady
callback. (issue #516)Refactor(Storage)
Improve robustness.CN:
Feat(Log)
新增配置项 log.showTimestames
,见 公共属性及方法。Fix(Core)
使用模拟的 click
事件以避免某些场景下原生 click 事件不生效的问题。Fix(style)
修复微信 Webview 中的 CSS transition 失效的问题,通过使用 bottom
而非 transform
。Fix(Core)
修复在 onReady
回调中调用 vConsole 方法导致报错的问题。 (issue #516)Refactor(Storage)
提高健壮性。EN:
Fix(Core)
Fix bug that VConsole.instance
is empty when VConsole import
as a new module.Chore(Core)
Fix type declaration errors caused by vendors.CN:
Fix(Core)
修复当 VConsole 作为新模块 import
时 VConsole.instance
为空的问题。Chore(Core)
修复由外部依赖库引起的 TypeScript 类型声明错误问题。EN:
Feat(Core)
Add new static property VConsole.instance
to get the singleton instance.Feat(Core)
Add new options storage.defaultStorages
, see Public Properties & Methods.Feat(Core)
New way of using vConsole.setOption()
: setOption('log.maxLogNumber', 20)
to set maxLogNumber
field only, and setOption({ log: { maxLogNumber: 20 }})
to overwrite log
object.Feat(Core)
Deprecated some options, see below.Fix(Plugin)
Fix the bug that event renderTab
doesn't render plugin view.Fix(Storage)
Fix cookie parse error in some bad cases. (issue #508, #509)Deprecated Options:
maxLogNumber
: Use option.log.maxLogNumber
instead.maxNetworkNumber
: Use option.network.maxNetworkNumber
instead.onClearLog
: Removed.CN:
Feat(Core)
新增静态属性 VConsole.instance
以获取实例化后的单例 vConsole 对象。Feat(Core)
新增配置项 storage.defaultStorages
,见 公共属性及方法。Feat(Core)
更新 vConsole.setOption()
用法:通过 setOption('log.maxLogNumber', 20)
来单独设置 maxLogNumber
字段,或通过 setOption({ log: { maxLogNumber: 20 }})
来覆盖 log
对象。Feat(Core)
废弃一些配置项,参见下面。Fix(Plugin)
修复插件事件 renderTab
没有渲染出视图的 bug。Fix(Storage)
修复某些情况下的 Cookie 解析错误问题。 (issue #508, #509)废弃的配置项:
maxLogNumber
:用 option.log.maxLogNumber
替代。maxNetworkNumber
:用 option.network.maxNetworkNumber
替代。onClearLog
:移除。EN:
Feat(Storage)
Added "Clear" button to batch delete all storage items. (issue #499)Fix(Storage)
Fix the issue that deleting cookies fails. (issue #499)CN:
Feat(Storage)
增加 "Clear" 按钮以批量删除所有 storage。 (issue #499)Fix(Storage)
修复无法删除 cookies 的问题。 (issue #499)EN:
Feat(Log)
Support for submitting command input using the enter key. (issue #498)Fix(Network)
Fix init.body
parameter problem. (issue #500)CN:
Feat(Log)
支持使用回车键提交命令行输入。 (issue #498)Fix(Network)
修复 init.body
参数报错。 (issue #500)EN:
Feat(Global)
Add new option vConsole.option.target
to specify custom mount target, see Public Properties & Methods. (issue #455)Feat(Log)
Add new methods: vConsole.log.log()|info()|...
, vConsole.log.clear()
, see Builtin Plugin: Properties & Methods.Feat(Network)
Add new methods: vConsole.network.add()|update()
, vConsole.network.clear()
, see Builtin Plugin: Properties & Methods.Feat(Network)
Add new option vConsole.option.maxNetworkNumber
to limit request number, see Public Properties & Methods. (issue #492)Fix(Network)
Display Request Payload for all HTTP methods, not just POST. (issue #493)Fix(Element)
Fix the infinite loop problem caused by the newly added Comment node. (issue #491)CN:
Feat(Global)
支持自定义挂载点,配置项 vConsole.option.target
见 公共属性及方法。 (issue #455)Feat(Log)
新增插件方法 vConsole.log.log()|info()|...
、vConsole.log.clear()
,见 内置插件:属性及方法。Feat(Network)
新增插件方法 vConsole.network.add()|update()
、vConsole.network.clear()
,见 内置插件:属性及方法。Feat(Network)
支持限制请求数量,配置项 vConsole.option.maxNetworkNumber
见 公共属性及方法。 (issue #492)Fix(Network)
在所有 HTTP Methods 中都会展示 Request Payload,而非仅限于 POST。 (issue #493)Fix(Element)
修复由于新增 Comment 节点导致的死循环问题。 (issue #491)EN:
Keep reminding: In
v3.10.0
, there are some Breaking Changes. If you upgrade fromv3.9.x
or lower, please pay attention to these changes.
Feat(Network)
Pretty output format for JSON response. (issue #486)Fix(Style)
Avoid panel scaling with the web page When initial-scale !== 1
.Fix(Core)
Fix the issue that clicking the panel button does not work in PC mode. (issue #487)Fix(Network)
Display formatted JSON instead of [object Object]
when Query/Payload/Headers is an object or array.Fix(Network)
Avoid overwriting onreadystatechange
of XHR objects multiple times when XHR objects are reused in some cases. (issue #214)CN:
提醒: 在
v3.10.0
中,有一些重大变化(Breaking Changes),无法向下兼容。 如果你从v3.9.x
或更低版本升级而来,请关注这些变化。
Feat(Network)
格式化输出 response 中的 JSON 内容。 (issue #486)Fix(Style)
当 initial-scale !== 1
时,避免面板随页面缩放大小。Fix(Core)
修复 PC 模式下点击面板按钮无效的问题。 (issue #487)Fix(Network)
当 Query/Payload/Headers 是对象或数组时,展示为结构化的 JSON 格式而非 [object Object]
。Fix(Network)
当某些情况下 XHR 对象被复用时,避免多次覆盖XHR对象的 onreadystatechange
以造成错误。 (issue #214)EN:
In this version, we refactored a lot of core logic, and used Svelte as the rendering engine for all views.
So there are some breaking changes, a small number of methods and properties are not forward compatible.
If you are a vConsole plugin developer, you should pay attention to these changes.
Breaking Changes:
Refactor(Core|Log|Network|Element)
Rebuild all views by using Svelte as template engine.Refactor(Core)
Remove vConsole.(tabList | activedTab | $dom)
properties.Refactor(Plugin)
Rename vConsole.showTab(pluginID)
to vConsole.showPlugin(pluginID)
.Refactor(Plugin)
Change callback option { data, onClick }
of plugin event addTopBar
: onClick
method will receive 2 arguments (which was 0 before): (event: Event, data?: any) => boolean
, which data
is the above option's data
field.Feat(Core)
Remove helper functions vConsole.tool
and vConsole.$
.Common Updates:
Feat(Log)
Support object's Symbol
keys.Feat(Log)
Support multi-level keyword hint in Log's command line input.Feat(Log)
Support string formatting %s, %d, %o
, and better %c
CSS styling formatting.Feat(Log)
Add pagination to objects or arrays to improve rendering performance, with 50 key-values per page.Feat(Network)
Add copy buttons to request attributes.Feat(Element)
Improve UX, selected node will be highlighted and applied to Expand/Collapse action.Feat(Style)
Style tags will be loaded into <head>
after vConsole initialization, and removed after destruction.Refactor(Storage)
Improve UX.Fix(Network)
Throw error when Fetch
get an error. (issue #458)CN:
这个版本中,我们重构了大部分核心逻辑,并且使用 Svelte 作为所有面板的视图层模板引擎。
这带来了一些重大变化(Breaking changes),少数属性和方法无法保证向下兼容。
如果你是 vConsole 插件开发者,应该关注这些变化。
Breaking Changes:
Refactor(Core|Log|Network|Element)
使用 Svelte 作为所有视图的模板引擎。Refactor(Core)
删除 vConsole.(tabList | activedTab | $dom)
属性。Refactor(Plugin)
重命名 vConsole.showTab(pluginID)
为 vConsole.showPlugin(pluginID)
。Refactor(Plugin)
更新插件事件 addTopBar
的配置参数 { data, onClick }
: onClick
会接收 2 个参数(之前是 0 个): (event: Event, data?: any) => boolean
,其中 data
为上述配置参数的 data
字段。Feat(Core)
删除辅助函数 vConsole.tool
和 vConsole.$
。Common Updates:
Feat(Log)
支持展示对象键值为 Symbol
类型的键值对。Feat(Log)
命令行支持多级关键字提示。Feat(Log)
支持使用 %s, %d, %o
来格式化展示字符串,并且优化了 %c
的 CSS 样式逻辑。Feat(Log)
对存在大量键值的对象或数组,加入翻页逻辑以提升渲染性能,每 50 一页。Feat(Network)
Request 的属性值支持复制。Feat(Element)
提升交互体验,选中的节点将会被高亮,并且展开/收起(Expand/Coolapse)基于选中的节点来进行。Feat(Style)
样式标签会在 vConsole 初始化后才注入 <head>
中,并在 vConsole 销毁后会自动移除。Refactor(Storage)
优化了部分交互体验。Fix(Network)
当 Fetch
发生 Error 时,会 throw 到外部,以符合标准实现。 (issue #458)EN:
Style(Log)
Add support for BigInt
and update Symbol
log style.Refactor(Style)
Lazy load style tag when vConsole init.Fix(Global)
Use this || self
as globalObject
to prevent self is not defined
error. (issue #441)Fix(Log)
Fix Cannot convert a Symbol value to a string
error when logged a Symbol
value.Fix(Log)
Now commands and output logs can be copied.Fix(Network)
Fix URIError
when decode URI fail. (issue #470)Fix(Network)
Fix potential forEach
error. (issue #471)Chore
Transform Svelte output code to ES5. (issue #468)CN:
Style(Log)
支持 BigInt
类型并更新 Symbol
类型的样式。Refactor(Style)
在 vConsole 初始化时再懒加载 style 标签(而非 import 后就加载)。Fix(Global)
使用 this || self
作为 globalObject
,以避免 self is not defined
错误。 (issue #441)Fix(Log)
修复打印 Symbol
类型时产生的 Cannot convert a Symbol value to a string
错误。Fix(Log)
修复 commands 命令及其输出结果无法复制的问题。Fix(Network)
修复解码 URL 参数时产生的 URIError
错误。 (issue #470)Fix(Network)
修复潜在的由 forEach
引起的错误。 (issue #471)Chore
转换 Svelte 代码产物到 ES5 标准,以避免 ES6 引发的构建问题。 (issue #468)EN:
Refactor(Global)
Add Typescript declaration to VConsole
class.CN:
Refactor(Global)
为 VConsole
类的方法参数添加 Typescript 声明。