Vue プロジェクトで mock を使用する方法をご存知ですか?

Vue プロジェクトで mock を使用する方法をご存知ですか?

Mock.jsは、フロントエンド開発者がバックエンドから独立して開発し、ユニットテストを記述できるように設計されたモック データ ジェネレーターです。以下のシミュレーション機能が提供されます。

  • データテンプレートに基づいてシミュレートされたデータを生成する
  • Ajax リクエストをシミュレートし、シミュレートされたデータを生成して返します。
  • HTMLテンプレートに基づいて模擬データを生成する

最初のステップ:

npm install mockjs // mockjs をインストール
npm インストール axios

2 番目のステップは、request.js で関連する構成を行うことです。request.js コードは次のとおりです。

'axios' から axios をインポートします
// axios.defaults.headers.post['Content-Type'] = 'application/x-www-urlencoded'
定数 http = axios.create()
 http.defaults.timeout = 3000
 http.interceptors.request.use(config => { // リクエストインターセプターの設定 // オプション // 何かを行う
    設定を返す
}, エラー => {
    コンソール.log(エラー)
    Promise.reject(error) を返します。
})
 http.interceptors.response.use(response => { // レスポンスインターセプターの設定 // オプション // 何かを行う
    応答を返す
}, エラー => {
    コンソール.log(エラー)
    Promise.reject(error) を返します。
})
 export function fetch(url, params) { // axios の post リクエストをカプセル化します return new Promise((resolve, reject) => { // Promise の使用方法については、axios.post(url, params).then(response => { を参照してください。
            resolve(response.data) // プロミス関連}).catch(error => {
            拒否(エラー) // プロミス関連})
    })
}
 export default { // 次のページで使用される htto_mock メソッドを公開します http_mock(url, params) {
        フェッチを返す(url, params)
    }
}

3 番目のステップは、mock.js で関連する構成を実行することです。mock.js コードは次のとおりです。

'mockjs' から Mock をインポートします。
 const ランダム = Mock.ランダム
 var listData = 関数() {
    _data = {とする
        ステータス: 200、
        メッセージ: '成功'、
        データ: {
            合計: 100,
            '行|10': [{
            ID: '@guid',
            名前: '@cname',
            '年齢|20-30': 23,
            'job|1': ['フロントエンドエンジニア'、'バックエンドエンジニア'、'UIエンジニア'、'要件エンジニア']
            }]
        }
    }
    {_data} を返す
}
// url はインターセプトされるリクエスト アドレス、リクエスト メソッド、リクエスト データ (ルール) です (ここでの api は mockjs によってインターセプトされます)
モック.モック('http://route.showapi.com/60-27', 'post', listData())
 

4番目のステップは、mock.jsをmain.jsにインポートすることです。

'@/http/mock' からモックをインポートします

ステップ5: ページで使用する

'@/http/request' からリクエストをインポートします
 エクスポートデフォルト{
    名前: "FirstPage",
    作成された() {
        この.getData()
    },
    メソッド: {
        取得データ() {
             // http_mock を使用してリクエストを送信するふりをします (mock はリクエストを自動的にインターセプトしてデータを生成します)
   // ここでの最初のパラメータは、Mock.mock() の最初のパラメータと一致している必要があります console.log('Request started')
            リクエスト.http_mock('http://route.showapi.com/60-27','api_id=63114&api_sign=3847b0').then(レスポンス => {
            コンソール.log(レスポンス._data)
            })
       },
    }
}

効果は以下のとおりです。

要約する

この記事はこれで終わりです。皆さんのお役に立てれば幸いです。また、123WORDPRESS.COM のその他のコンテンツにも注目していただければ幸いです。

以下もご興味があるかもしれません:
  • Vue プロジェクトにおける mock.js の使用と基本的な使い方
  • Vue プロジェクトで mock.js を使用するための完全な手順
  • vue-cliのローカル開発でモックデータを利用する方法の詳しい説明
  • Vue で開発環境でモックを制御し、本番環境で無効にする方法

<<:  フロートとBFCをクリアするCSSメソッド

>>:  MySQL の問題を解決する: MSVCR120.dll が見つからないため、コードの実行を続行できません

推薦する

HTML テーブルタグチュートリアル (33): セルの垂直配置属性 VALIGN

垂直方向では、セルの配置を上、中央、下に設定できます。基本的な構文<TD VLIGN=&quo...

CSS3 で作成された背景グラデーションアニメーション効果

成果を達成する 実装コードhtml <h1 class="text-light&qu...

Maven モードで Tomcat ソースコードを実行する方法

序文最近、Tomcat の起動プロセスを分析していました。Tomcat のソース コードはアイデア次...

MySQL 5.x の文字化け問題の解決方法

MySQL はよく使われるオープンソースのデータベース ソフトウェアですが、初めてのユーザーにはあま...

JSはビデオの再生速度を制御するための簡単なサンプルコードを実装します

導入以前、ある問題に気づきました。学習ビデオを視聴しているとき、動きが遅すぎる、先生が黒板に書くのに...

Vueカスタムカプセル化ボタンコンポーネント

Vueボタンコンポーネントのカスタムカプセル化コードは参考用です。具体的な内容は次のとおりです。ボタ...

autoconfを使用してMakefileを生成し、プロジェクトをコンパイルする手順

序文Linux では、コンパイルとリンクには Makefile を使用する必要がありますが、適切な ...

antd+reactプロジェクトをviteに移行するためのソリューションの詳細な説明

Antd+react+webpackは、多くの場合、Reactテクノロジースタックに基づくフロントエ...

ネイティブjsはショッピングカートのロジックと機能を実装します

この記事の例では、ショッピングカートのロジックと機能を実装するためのjsの具体的なコードを共有してい...

HTML 描画ユーザー登録ページ

この記事では、HTML描画ユーザー登録ページの具体的な実装コードを参考までに共有します。具体的な内容...

React 構成 px 変換 rem メソッド

関連する依存関係をインストールするnpm i lib-flexible --save npm i p...

MySQL マルチバージョン同時実行制御 MVCC の実装

トランザクション分離レベルの設定 グローバルトランザクション分離レベルを読み取りコミット済みに設定;...

JVM 上の高性能データ形式ライブラリ パッケージである Apache Arrow の紹介とアーキテクチャ (Gkatziouras)

Apache Arrow は、BigQuery を含むさまざまなビッグデータ ツールで使用される一...

Dockerはイメージ名とTAG操作の名前を変更します

docker イメージを使用する場合、以下に示すように、REPOSITORY と TAG の両方が ...

Linux sshのデフォルトのリモートポート番号を変更する6つの手順

Linux のデフォルトの ssh リモート ポートは 22 です。デフォルトのポートは、悪意のある...