稀土掘金技术社区 04月09日
最近 React Scan 太火了,做了个 Vue Scan
index_new5.html
../../../zaker_core/zaker_tpl_static/wap/tpl_guoji1.html

 

Vue Scan是一款为Vue开发者设计的工具,灵感来源于React Scan,旨在通过可视化组件更新来帮助开发者排查性能问题。它通过在组件更新时绘制闪烁的边框,直观地展示组件的更新状态,支持Vue2和Vue3项目。Vue Scan提供Vue插件,方便在开发环境中集成,并提供Chrome扩展,允许在任何Vue应用中注入功能。虽然目前Vue Scan无法自动识别性能问题,但它提供了一种观察组件更新状态的新方式,帮助开发者更好地理解和优化Vue应用的性能。

✨ Vue Scan的核心功能是在组件更新时,在组件对应位置绘制一个闪烁的边框,从而实现组件更新的可视化。

💡 Vue Scan支持Vue2和Vue3项目,开发者可以通过安装Vue插件的方式,在mount之前注入相关内容,方便在开发环境中使用。

🌐 除了Vue插件,Vue Scan还提供Chrome浏览器扩展,允许开发者在任何Vue应用中注入功能,方便在其他网站上进行测试和调试。

⚠️ 目前Vue Scan的主要功能是真实地反映组件的更新,但不会区分和识别此次更新是否有性能问题,后续可能会有改进。

原创 huali 2025-04-07 08:30 重庆

关注更多AI编程资讯请去AI Coding专区:https://juejin.cn/aicoding在 Rea

关注更多AI编程资讯请去AI Coding专区:https://juejin.cn/aicoding

在 React Scan 的 github 有这么一张 gif 图片。当用户在页面上操作时,对应的组件会有一个闪烁,表示当前组件更新了。用这样的方式来排查程序的性能是一个很直观的方式。

根据 React Scan 自己的介绍,React Scan 可以通过自动检测和突出显示导致性能问题的渲染

Vue Scan

但是我主要使用 vue 来开发我的应用,看到这个功能非常眼馋,所以就动手自己做了一个 demo,目前也构建了一个 chrome 扩展,不过扩展仅支持识别 vue3 项目 现在已经支持 vue2 和 vue3 项目了。

项目地址:Vue Scan

https://github.com/zcf0508/vue-scan)

简单介绍,Vue Scan 通过组件的 onBeforUpdate 钩子,当组件更新时,在组件对应位置绘制一个闪烁的边框。看起来的效果就像这样。


用法

我更推荐在开发环境使用它,Vue Scan 提供一个 vue plugin,允许你在 mount 之前注入相关的内容。

// vue3
import { createApp } from 'vue'
import VueScan, { type VueScanOptions } from 'z-vue-scan/src'

import App from './App.vue'

const app = createApp(App)
app.use<VueScanOptions>(VueScan, {})
app.mount('#app')
// vue2
import Vue from 'vue'
import VueScan, { type VueScanBaseOptions } from 'z-vue-scan/vue2'
import App from './App.vue'

Vue.use<VueScanBaseOptions>(VueScan, {})

new Vue({
  render: h => h(App),
}).$mount('#app')

浏览器扩展

如果你觉得看自己的网站没什么意思,那么我还构建了一个浏览器扩展,允许你注入相关方法到别人的 vue 程序中。

你可以在Github Releas寻找一下最新版的安装包,然后解压安装到浏览器中。(https://github.com/zcf0508/vue-scan/releases)

安装完成后,你的扩展区域应该会多一个图标,点击之后会展开一个面板,允许你控制是否注入相关的内容。

这是如果你进入一个使用 vue 构建的网站,可以看控制台看到相关的信息,当你在页面交互时,页面应该也有相应的展示。

缺陷

就像 React Scan 的介绍中提到的,它能自动识别性能问题,单目前 Vue Scan 只是真实地反映组件的更新,并不会区分和识别此次更新是否有性能问题。

结语

通过观察网站交互时组件的更新状态,来尝试发现网站的性能问题,我觉得这是一个很好的方式。希望这个工具可以给大家带来一点乐趣和帮助。

点击关注公众号,“技术干货” 及时达!

阅读原文

跳转微信打开

Fish AI Reader

Fish AI Reader

AI辅助创作,多种专业模板,深度分析,高质量内容生成。从观点提取到深度思考,FishAI为您提供全方位的创作支持。新版本引入自定义参数,让您的创作更加个性化和精准。

FishAI

FishAI

鱼阅,AI 时代的下一个智能信息助手,助你摆脱信息焦虑

联系邮箱 441953276@qq.com

相关标签

Vue Vue Scan 性能优化 组件更新 Chrome扩展
相关文章