Promise カプセル化 wx.request メソッド

Promise カプセル化 wx.request メソッド

前回の記事では、Promise を使用して小さなプログラム wx.request をカプセル化する実装方法を紹介しました。この記事では、promise を使用して wx.request をカプセル化する方法について重点的に説明します。具体的な内容は次のとおりです。

wx.request をカプセル化する理由は何ですか?

インターフェースを要求するとき、インターフェースの複数の API を要求することがあるためです。カプセル化を使用しないと、コードの記述が面倒になり、パフォーマンスの問題も発生します。

カプセル化により、コードの作成が容易になり、ユーザー エクスペリエンスが向上し、コードの変更が容易になります。

カプセル化の選択に Promise を使用するのはなぜですか?

WeChat アプレットを書くとき、wx.request を書くとき、この書き方は $.ajax の書き方に似ているので、皆さんもよくご存知だと思います。 $.ajax のカプセル化についてはよく知っているはずなので、それを promise と関連付けることは難しくありません。また、WeChat アプレットは es6 構文をサポートしているため、promise はカプセル化に適した選択肢です。

wx.request をカプセル化するにはどうすればいいですか?

カプセル化の理由とツールがわかったので、次のステップは、難しいwx.requestをカプセル化することです。まず、開発ツールでファイルを作成します。

大きなフォルダーに包み、中身を別々に処理します。

ここに画像の説明を挿入

まず、fetch.js ファイルで、promise を使用して wx.request をカプセル化します。

//promiseはwx.requestをカプセル化する
    module.exports=(url,データ,メソッド)=>{
        //まずpromiseを定義する
        promise = new Promise((resolve, deny) => { とする
            wx.リクエスト({
                url:url,
                データ:データ、
                メソッド:メソッド、
 
                //実行成功(res){
                    解決する
                },
 
                //実行 fail(err){
                    拒否(エラー)
                },
    })
    })
                //Promise をプッシュして Promise を返す
    }

次に、api.js ファイルで、統合管理のために要求する必要があるすべてのものをここに配置します。

//インターフェース管理モジュール.exports={
    "バナー":"/h8/home/multidata"
}

最後に、http.js ファイルでこれを一元管理して使用します。

// ファイルを導入 const api=require("./api")
    const フェッチ = require("./fetch")
 
//パスを定義する let baseUrl="http://123.207.32.32:8000/api"
 
//コンテンツをエクスポートする関数banner(){
        戻り値: fetch(baseUrl+api.banner,{},'get')
    }
 
    モジュール.エクスポート={
        バナー
    }

カプセル化後、使用する前にグローバル app.js にインポートする必要があります。

  定数 http = require('./http/http.js')
 
    アプリ({
      http,
    })

ファイル内での使用:

    //アプリの紹介
    const アプリ = getApp()
 
    ページ({
      データ: {
       リスト:[]
      }
 
    onLoad: 関数 () {
        app.http.banner().then(res)=>{
            this.setData({
                リスト:res.data.data.banner.list        
        })
            }
    }

wx.request の promise カプセル化に関するこの記事はこれで終わりです。wx.request の promise カプセル化に関するより関連性の高い内容については、123WORDPRESS.COM の過去の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • Promise を使用して wx.request アプレットをカプセル化する方法

<<:  Linux ssh サービス情報と実行ステータスを表示する方法

>>:  MySQL 8.0.11 インストール概要チュートリアル図

推薦する

CSS フレキシブルレイアウト FLEX、メディアクエリ、モバイルクリックイベントの実装

フレックスレイアウト定義: Flexレイアウトの要素は、 Flex 、または略して「コンテナー」と呼...

Nginx でファイル ホットリンク保護サービスを構築する方法を学ぶ例

序文多くのサイトが、ポイントやゴールドコインなど、情報のダウンロードに料金を請求していることは誰もが...

IDEA を使用して Web プロジェクトを作成し、Tomcat に公開する方法

目次ウェブ開発1. Web開発の概要Tomcatのインストールと設定Tomcatをインストールする2...

18 個のキラー JavaScript ワンライナー

序文JavaScript は習得が最も簡単な言語の 1 つであるため、成長と繁栄を続けており、市場に...

JSON.stringify を使用する際に発生する循環参照の問題を解決する方法の詳細な説明

プログラマーが日常的に TypeScript/JavaScript 開発を行う場合、複雑な Java...

クエリプロファイラを使用して MySQL ステートメントの実行時間を表示する方法

前回の記事では、MySQL ステートメントの実行時間をチェックする 2 つの方法を紹介しました。今日...

Reactでaxiosを使用してリクエストを送信する一般的な方法

目次Reactにaxios依存関係をインストールして導入するGETリクエストにaxiosを使用するa...

Linux でテキストを表示するためのヒント (非常に実用的!)

序文日常の開発では、サーバー上でさまざまなテキストやログの表示操作を実行する必要があることがよくあり...

JavaScript オブジェクトからプリミティブ値への変換の詳細な説明

目次オブジェクトプロトタイプの値()オブジェクトプロトタイプtoString()シンボル.toPri...

Vue の新しい組み込みコンポーネントの使用方法の詳細な説明

目次1. テレポート1.1 テレポートの紹介1.2 テレポートの使用1.3 プレビュー効果2. サス...

Vueでドラッグ可能なコンポーネントを実装する方法

この記事では、Vueでドラッグ可能なコンポーネントとドラッグ可能なコンポーネントを実装する方法を参考...

Springboot アプリケーションを迅速にデプロイするために Docker とアイデアを統合する詳細なプロセス

目次1. はじめに2. 環境とツール3. Dockerをインストールし、リモート接続を構成する4. ...

Linux で jar パッケージを起動してバックグラウンドで実行する方法

jar パッケージを実行する Linux コマンドは次のとおりです。方法1: java -jar s...

Linux CentOS 6.5 ifconfig が IP を照会できない問題の解決方法

最近、何人かの友人から、仮想マシンに CentOS をインストールした後、ifconfig コマンド...