Vue DevTools 是一个旨在增强 Vue 开发人员体验的工具,它提供了一些功能来帮助开发者更好地了解 Vue 应用程序。
Vue DevTools:Unleash Vue Developer Experience. Enhance your Vue development journey with an amazing experience!
典型的功能特征包括:
比如以下展示了不同功能的截图:
在 Vue 项目中使用 Vue DevTools 有多种方法,比如:
Vue DevTools 的典型优质特征可以概括为以下几点:
值得一提的是,DevTools 仅兼容 Vue 3,如果仍在使用 Vue2 可以改用 vue-devtools。而如果使用 Nuxt,则可以使用 nuxt-devtools 以获得更强大的开发人员体验。
目前 Vue DevTools 在 Github 通过 MIT 协议开源,有超过 0.5k 的 star、1k 的项目依赖量,是一个值得关注的 Vue 生态前端开源项目。
Vue DevTools 提供了一个用于运行 Vue DevTools 的 Vite 插件。如果项目使用 Vite,强烈建议将其作为运行 DevTools 的首选选项,因为它提供了更强大的功能。
$ npm add -D vite-plugin-vue-devtools
// pnpm
$ pnpm add -D vite-plugin-vue-devtools
// yarn
$ yarn add -D vite-plugin-vue-devtools
// bun
$ bun add -D vite-plugin-vue-devtools
然后直接在 Vite 配置中添加该插件:
// Configuration Vite
import {defineConfig} from 'vite'
import VueDevTools from 'vite-plugin-vue-devtools'
export default defineConfig({
plugins: [
VueDevTools(),
],
})
如果使用不受支持的浏览器,或者有其他特定需求(例如应用程序位于 Electron 中)则可以使用独立应用程序。
首先安装相应依赖:
$ npm add -g @vue/devtools
// pnpm
$ pnpm add -g @vue/devtools
// yarn
$ yarn global add @vue/devtools
// bun
$ bun add -g @vue/devtools
全局安装该软件包后,运行下面命令:
vue-devtools
// 通过PORT=8000 vue-devtools改变端口,然后在APP中通过下面设置
window.__VUE_DEVTOOLS_PORT__ = 8000
// 或者
devtools.connect(/ host /, 8000)
然后将下面代码添加到应用程序 HTML 文件的 <head> 部分:
<script src="http://localhost:8098"></script>
// 通过script标签引入
或者使用下面代码远程调试设备:
<script>
window.__VUE_DEVTOOLS_HOST__ = '<your-local-ip>'
// default: localhost
window.__VUE_DEVTOOLS_PORT__ = '<devtools-port>'
// default: 8098
</script>
<script src="http://<your-local-ip>:8098"></script>
// 这里的ip需要设置为真实机器IP
<your-local-ip> 通常类似 192.168.x.x。
当然,也可以选择在应用中导入:
import {devtools} from '@vue/devtools'
// 导入包
然后使用 connect 方法:
if (process.env.NODE_ENV === 'development')
devtools.connect(/* 需要host和端口 */)
以下示例需要确保 http://your-ip:8098 下的页面在设备/模拟器上返回 JavaScript 代码。 如果没有请务必检查防病毒或路由器/防火墙设置,如果有效请按照说明操作,并使用 IP 连接到开发工具。 例如:
import devtools from '@vue/devtools'
import Vue from 'vue'
// ...
function onDeviceReady() {
devtools.connect('http://192.168.xx.yy') // use your IP
}
if (window.location.protocol === 'file:')
document.addEventListener('deviceready', onDeviceReady, false)
else
onDeviceReady()
本文主要和大家介绍 Vue DevTools, Vue DevTools 是一个旨在增强 Vue 开发人员体验的工具,它提供了一些功能来帮助开发者更好地了解 Vue 应用程序。因为篇幅问题,关于 Vue DevTools 只是做了一个简短的介绍。
https://devtools-next.vuejs.org/guide/getting-started
https://github.com/vuejs/devtools-next/tree/f96ec0421d702d8fc05f5d04eeff1000231221c4