移動(dòng)端調(diào)試神器vConsole使用詳解
介紹
平時(shí)在web應(yīng)用開發(fā)過程中,我們可以console.log去輸出一些信息或者看接口返回的信息及接口性能等情況,但是在移動(dòng)端,也就是在手機(jī)上,我們是看不到的。
這種情況下,可以選擇使用alert彈出一些信息,但是這種方法不怎么方便,也會(huì)阻斷JS線程,導(dǎo)致后面的線程都不執(zhí)行。也影響調(diào)試體驗(yàn)。
那么,如果將console.log應(yīng)用到移動(dòng)端呢?
需要借助第三方插件:vConsole
一個(gè)輕量、可拓展、針對(duì)手機(jī)網(wǎng)頁的前端開發(fā)者調(diào)試面板。
vConsole 是框架無關(guān)的,可以在 Vue、React 或其他任何框架中使用。都有配套插件
https://gitee.com/Tencent/vConsole/tree/master/
官方文檔
功能特性
日志(Logs): console.log|info|error|…
網(wǎng)絡(luò)(Network): XMLHttpRequest, Fetch, sendBeacon
節(jié)點(diǎn)(Element): HTML 節(jié)點(diǎn)樹
存儲(chǔ)(Storage): Cookies, LocalStorage, SessionStorage
手動(dòng)執(zhí)行 JS 命令行
自定義插件
使用
方法一:使用 npm(推薦)
npm install vconsole
Import 并初始化后,即可使用 console.log 功能,如 Chrome devtools 上一樣。
import VConsole from 'vconsole'; const vConsole = new VConsole(); // 接下來即可照常使用 `console` 等方法 console.log('Hello world'); // 結(jié)束調(diào)試后,可移除掉 vConsole.destroy();
方法二:使用 CDN 直接插入到 HTML
<script src="https://unpkg.com/vconsole@latest/dist/vconsole.min.js"></script> <script> // VConsole 默認(rèn)會(huì)掛載到 `window.VConsole` 上 var vConsole = new window.VConsole(); // 接下來即可照常使用 `console` 等方法 console.log('Hello world'); // 結(jié)束調(diào)試后,可移除掉 vConsole.destroy(); </script>
開發(fā)環(huán)境顯示生成環(huán)境刪除
首先,咱們在做react、vue的單頁應(yīng)用開發(fā)的時(shí)候,相信大家對(duì)配置文件里的process.env并不眼生。 我們只需要生產(chǎn)環(huán)境不加載vConsole 開發(fā)和測試加載vConsole 并且限制只在手機(jī)端顯示,因?yàn)閜c有游覽器的調(diào)試工具了,如果條件允許我們還可以添加生產(chǎn)環(huán)境開關(guān)按鈕的方式觸發(fā)調(diào)試面板
vue案例
如果不懂process.env的話自行百度搜索下很簡單的,就好比全局變量一樣
在main.ts里面添加如下代碼
import { createApp } from 'vue' import App from './App.vue' import './registerServiceWorker' import store from './store' import VConsole from 'vconsole'; import router from './router' createApp(App).use(store).use(router).mount('#app') // 判斷是否是pc設(shè)備 const isPc = () => { const userAgentInfo = navigator.userAgent; const Agents = ["Android", "iPhone", "SymbianOS", "Windows Phone", "iPad", "iPod"]; let flag = true; for (let v = 0; v < Agents.length; v++) { if (userAgentInfo.indexOf(Agents[v]) > 0) { flag = false; break; } } return flag; } //如果不是生產(chǎn)環(huán)境并且不是pc設(shè)備那么就顯示調(diào)試 if (process.env.NODE_ENV != "prod" && !isPc()) { console.log(process.env.NODE_ENV); const vConsole = new VConsole(); }
到此這篇關(guān)于移動(dòng)端調(diào)試神器vConsole的文章就介紹到這了,更多相關(guān)移動(dòng)端調(diào)試vConsole內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Vant Uploader實(shí)現(xiàn)上傳一張或多張圖片組件
這篇文章主要為大家詳細(xì)介紹了Vant Uploader實(shí)現(xiàn)上傳一張或多張圖片組件,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-09-09Vue+ElementUi實(shí)現(xiàn)點(diǎn)擊表格中鏈接進(jìn)行頁面跳轉(zhuǎn)與路由詳解
在vue中進(jìn)行前端網(wǎng)頁開發(fā)時(shí),通常列表數(shù)據(jù)用el-table展示,下面這篇文章主要給大家介紹了關(guān)于Vue+ElementUi實(shí)現(xiàn)點(diǎn)擊表格中鏈接進(jìn)行頁面跳轉(zhuǎn)與路由的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2023-02-02vue基礎(chǔ)之v-bind屬性、class和style用法分析
這篇文章主要介紹了vue基礎(chǔ)之v-bind屬性、class和style用法,結(jié)合實(shí)例形式分析了vue.js中v-bind綁定及class、style樣式控制相關(guān)操作技巧,需要的朋友可以參考下2019-03-03vue element-ui實(shí)現(xiàn)el-table表格多選以及回顯方式
這篇文章主要介紹了vue element-ui實(shí)現(xiàn)el-table表格多選以及回顯方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-07-075分鐘學(xué)會(huì)Vue動(dòng)畫效果(小結(jié))
這篇文章主要介紹了5分鐘學(xué)會(huì)Vue動(dòng)畫效果(小結(jié)),小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-07-07基于Vue.js 2.0實(shí)現(xiàn)百度搜索框效果
這篇文章主要為大家詳細(xì)介紹了基于Vue.js 2.0實(shí)現(xiàn)百度搜索框效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-09-09淺談vue中使用圖片懶加載vue-lazyload插件詳細(xì)指南
本篇文章主要介紹了淺談vue中使用圖片懶加載vue-lazyload插件詳細(xì)指南,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下。2017-10-10