モバイル デバッグ アーティファクトである vConsole の使用に関する詳細な説明

vConsole はフレームワークに依存せず、Vue、React、またはその他のフレームワークで使用できます。今日は、この記事を通して、モバイル デバッグ アーティファクトである vConsole の使い方を紹介します。興味のある方はぜひご覧ください。

導入

通常、Web アプリケーションの開発では、console.log に何らかの情報を出力したり、インターフェイスから返される情報やインターフェイスのパフォーマンスを確認したりすることができますが、モバイル端末、つまり携帯電話ではそれを見ることができません。

この場合、アラートを使用して情報をポップアップ表示することもできますが、この方法はあまり便利ではなく、JS スレッドもブロックされ、後続のスレッドが実行されなくなります。デバッグ エクスペリエンスにも影響します。

では、console.log をモバイル端末に適用するとどうなるでしょうか?
サードパーティのプラグインが必要です: vConsole

モバイル Web ページ用の軽量でスケーラブルなフロントエンド開発者デバッグ パネル。

vConsole はフレームワークに依存せず、Vue、React、またはその他のフレームワークで使用できます。サポートするプラグインがあります

https://gitee.com/Tencent/vConsole/tree/master/公式ドキュメント

特徴

ログ: console.log|info|error|...
ネットワーク: XMLHttpRequest、Fetch、sendBeacon
ノード (要素): HTML ノード ツリー
ストレージ: Cookie、LocalStorage、SessionStorage
JS コマンド ラインの手動実行
カスタム プラグイン

使用

方法 1: npm を使用する (推奨)

npm install vconsole

インポートして初期化すると、Chrome devtools と同様に console.log 機能を使用できるようになります。

import VConsole from 'vconsole';
const vConsole = new VConsole();
// 接下来即可照常使用 `console` 等方法
console.log('Hello world');
// 结束调试后,可移除掉
vConsole.destroy();

方法 2: CDN を使用して HTML に直接挿入する

<script src="https://unpkg.com/vconsole@latest/dist/vconsole.min.js"></script>
<script>
  // VConsole 默认会挂载到 `window.VConsole` 上
  var vConsole = new window.VConsole();
  // 接下来即可照常使用 `console` 等方法
    console.log('Hello world');
     
    // 结束调试后,可移除掉
    vConsole.destroy();
</script>

開発環境には、本番環境が削除されたことが表示されます

まず、react や vue でシングルページのアプリケーションを開発している場合、設定ファイルの process.env については皆さん馴染みがないと思います。本番環境は vConsole をロードせず、開発とテストは vConsole をロードし、PC にはブラウザ デバッグ ツールがあるため、表示を携帯電話のみに限定する必要があります。条件が許せば、トリガーする本番環境切り替えボタンを追加することもできます。デバッグパネル。

vue案例

process.env がわからない場合は、Baidu で検索するのが非常に簡単で、グローバル変数と同じです。

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设备
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;
}
 
//如果不是生产环境并且不是pc设备那么就显示调试
if (process.env.NODE_ENV != "prod" && !isPc()) {
    console.log(process.env.NODE_ENV);
    const vConsole = new VConsole();
}

おすすめ

転載: blog.csdn.net/weixin_64051447/article/details/130053334